com.google.protobuf.Duration#getNanos ( )源码实例Demo

下面列出了com.google.protobuf.Duration#getNanos ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: bazel-buildfarm   文件: MemoryInstance.java
@Override
protected void validateAction(
    String operationName,
    Action action,
    PreconditionFailure.Builder preconditionFailure,
    RequestMetadata requestMetadata)
    throws InterruptedException, StatusException {
  if (action.hasTimeout() && config.hasMaximumActionTimeout()) {
    Duration timeout = action.getTimeout();
    Duration maximum = config.getMaximumActionTimeout();
    if (timeout.getSeconds() > maximum.getSeconds()
        || (timeout.getSeconds() == maximum.getSeconds()
            && timeout.getNanos() > maximum.getNanos())) {
      preconditionFailure
          .addViolationsBuilder()
          .setType(VIOLATION_TYPE_INVALID)
          .setSubject(Durations.toString(timeout) + " > " + Durations.toString(maximum))
          .setDescription(TIMEOUT_OUT_OF_BOUNDS);
    }
  }

  super.validateAction(operationName, action, preconditionFailure, requestMetadata);
}
 
源代码2 项目: bazel-buildfarm   文件: ShardInstance.java
@Override
protected void validateAction(
    Action action,
    @Nullable Command command,
    Map<Digest, Directory> directoriesIndex,
    Consumer<Digest> onInputDigest,
    PreconditionFailure.Builder preconditionFailure) {
  if (action.hasTimeout() && hasMaxActionTimeout()) {
    Duration timeout = action.getTimeout();
    if (timeout.getSeconds() > maxActionTimeout.getSeconds()
        || (timeout.getSeconds() == maxActionTimeout.getSeconds()
            && timeout.getNanos() > maxActionTimeout.getNanos())) {
      preconditionFailure
          .addViolationsBuilder()
          .setType(VIOLATION_TYPE_INVALID)
          .setSubject(Durations.toString(timeout) + " > " + Durations.toString(maxActionTimeout))
          .setDescription(TIMEOUT_OUT_OF_BOUNDS);
    }
  }

  super.validateAction(action, command, directoriesIndex, onInputDigest, preconditionFailure);
}
 
源代码3 项目: bazel-buildfarm   文件: Poller.java
private void waitForNextDeadline() {
  try {
    Duration waitTime = getWaitTime();
    if (waitTime.getSeconds() != 0 || waitTime.getNanos() != 0) {
      wait(
          waitTime.getSeconds() * 1000 + waitTime.getNanos() / 1000000,
          waitTime.getNanos() % 1000000);
    }
  } catch (InterruptedException e) {
    running = false;
  }
}
 
源代码4 项目: bazel-buildfarm   文件: InputFetcher.java
private boolean isQueuedOperationValid(QueuedOperation queuedOperation) {
  Action action = queuedOperation.getAction();

  if (action.hasTimeout() && workerContext.hasMaximumActionTimeout()) {
    Duration timeout = action.getTimeout();
    Duration maximum = workerContext.getMaximumActionTimeout();
    if (timeout.getSeconds() > maximum.getSeconds()
        || (timeout.getSeconds() == maximum.getSeconds()
            && timeout.getNanos() > maximum.getNanos())) {
      return false;
    }
  }

  return !queuedOperation.getCommand().getArgumentsList().isEmpty();
}
 
源代码5 项目: bazel-buildfarm   文件: PutOperationStage.java
private static float millisecondBetween(Timestamp from, Timestamp to) {
  // The time unit we want is millisecond.
  // 1 second = 1000 milliseconds
  // 1 millisecond = 1000,000 nanoseconds
  Duration d = Timestamps.between(from, to);
  return d.getSeconds() * 1000.0f + d.getNanos() / (1000.0f * 1000.0f);
}
 
源代码6 项目: bazel-buildfarm   文件: Poller.java
public Poller(Duration period) {
  checkState(period.getSeconds() > 0 || period.getNanos() >= 1000);
  periodMicros = period.getSeconds() * 1000000 + period.getNanos() / 1000;
  periodDeadline = Deadline.after(periodMicros, MICROSECONDS);
}
 
源代码7 项目: bazel-buildfarm   文件: Watchdog.java
private synchronized void reset(Duration timeout) {
  start = System.nanoTime();
  timeoutNanos = timeout.getSeconds() * 1000000000L + timeout.getNanos();
  this.notify();
}
 
 方法所在类
 同类方法