gpt4 book ai didi

com.zsmartsystems.zigbee.transaction.ZigBeeTransactionFuture.set()方法的使用及代码示例

转载 作者:知者 更新时间:2024-03-13 10:49:18 26 4
gpt4 key购买 nike

本文整理了Java中com.zsmartsystems.zigbee.transaction.ZigBeeTransactionFuture.set()方法的一些代码示例,展示了ZigBeeTransactionFuture.set()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZigBeeTransactionFuture.set()方法的具体详情如下:
包路径:com.zsmartsystems.zigbee.transaction.ZigBeeTransactionFuture
类名称:ZigBeeTransactionFuture
方法名:set

ZigBeeTransactionFuture.set介绍

[英]Sets the CommandResult.
[中]设置命令结果。

代码示例

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

private void completeTransaction(ZigBeeCommand receivedCommand) {
  if (timeoutTask != null) {
    timeoutTask.cancel(false);
  }
  logger.debug("Transaction complete: {}", command);
  if (transactionFuture != null) {
    synchronized (transactionFuture) {
      transactionFuture.set(new CommandResult(receivedCommand));
      transactionFuture.notify();
    }
  }
  if (responseMatcher != null) {
    transactionManager.removeTransactionListener(this);
  }
  state = TransactionState.COMPLETE;
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Override
public CommandResult get() throws InterruptedException, ExecutionException {
  try {
    return get(TIMEOUT_MILLISECONDS, TimeUnit.MILLISECONDS);
  } catch (InterruptedException e) {
    set(new CommandResult());
    return result;
  }
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Override
  public CommandResult get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException {
    synchronized (this) {
      if (result != null) {
        return result;
      }
      unit.timedWait(this, timeout);
      if (result == null) {
        set(new CommandResult());
      }
      return result;
    }
  }
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Override
  public Future<CommandResult> answer(InvocationOnMock invocation) {
    ZigBeeCommand command = (ZigBeeCommand) invocation.getArguments()[0];
    ZigBeeTransactionFuture commandFuture = new ZigBeeTransactionFuture();
    CommandResult result = new CommandResult(responses.get(command.getClusterId()));
    commandFuture.set(result);
    return commandFuture;
  }
}).when(networkManager).sendTransaction(ArgumentMatchers.any(ZigBeeCommand.class),

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Override
  public Future<CommandResult> answer(InvocationOnMock invocation) {
    ZigBeeCommand command = (ZigBeeCommand) invocation.getArguments()[0];
    ZigBeeTransactionFuture commandFuture = new ZigBeeTransactionFuture();
    CommandResult result = new CommandResult(responses.get(command.getClusterId()));
    commandFuture.set(result);
    return commandFuture;
  }
}).when(networkManager).sendTransaction(ArgumentMatchers.any(ZigBeeCommand.class),

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

/**
 * Broadcasts command i.e. does not wait for response.
 *
 * @param command the {@link ZigBeeCommand}
 * @return the {@link CommandResult} future.
 */
private Future<CommandResult> broadcast(final ZigBeeCommand command) {
  synchronized (command) {
    final ZigBeeTransactionFuture transactionFuture = new ZigBeeTransactionFuture();
    sendCommand(command);
    transactionFuture.set(new CommandResult(new BroadcastResponse()));
    return transactionFuture;
  }
}

代码示例来源:origin: zsmartsystems/com.zsmartsystems.zigbee

@Test
public void testIsDone() throws InterruptedException, ExecutionException, TimeoutException {
  ZigBeeTransactionFuture future = new ZigBeeTransactionFuture();
  assertFalse(future.isDone());
  CommandResult result = new CommandResult();
  future.set(result);
  assertTrue(future.isDone());
  assertEquals(result, future.get());
  assertEquals(result, future.get(0, TimeUnit.MICROSECONDS));
}

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com