org.fusesource.mqtt.client.QoS类的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(8.4k)|赞(0)|评价(0)|浏览(79)

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

QoS介绍

暂无

代码示例

代码示例来源:origin: fusesource/mqtt-client

protected HeaderBase qos(QoS qos) {
  this.header &= 0xF9;
  this.header |= (qos.ordinal() << 1) & 0x06;
  return this;
}

代码示例来源:origin: fusesource/mqtt-client

protected QoS qos() {
  return QoS.values()[((header & 0x06) >>> 1)];
}
protected HeaderBase qos(QoS qos) {

代码示例来源:origin: io.fabric8.ipaas.apps/fabric8mq

/**
 * Given a PUBLISH command determine if it will expect an ACK based on the
 * QoS of the Publish command and the QoS of this subscription.
 *
 * @param publish The publish command to inspect.
 * @return true if the client will expect an PUBACK for this PUBLISH.
 */
public boolean expectAck(PUBLISH publish) {
  QoS publishQoS = publish.qos();
  if (publishQoS.compareTo(this.qos) > 0) {
    publishQoS = this.qos;
  }
  return !publishQoS.equals(QoS.AT_MOST_ONCE);
}

代码示例来源:origin: org.apache.activemq/activemq-all

protected void restoreDurableSubs(List<SubscriptionInfo> subs) {
  try {
    for (SubscriptionInfo sub : subs) {
      String name = sub.getSubcriptionName();
      String[] split = name.split(":", 2);
      QoS qoS = QoS.valueOf(split[0]);
      onSubscribe(new Topic(split[1], qoS));
      // mark this durable subscription as restored by Broker
      restoredDurableSubs.add(MQTTProtocolSupport.convertMQTTToActiveMQ(split[1]));
    }
  } catch (IOException e) {
    LOG.warn("Could not restore the MQTT durable subs.", e);
  }
}

代码示例来源:origin: io.fabric8.jube.images.fabric8/fabric8-mq

/**
 * Given a PUBLISH command determine if it will expect an ACK based on the
 * QoS of the Publish command and the QoS of this subscription.
 *
 * @param publish The publish command to inspect.
 * @return true if the client will expect an PUBACK for this PUBLISH.
 */
public boolean expectAck(PUBLISH publish) {
  QoS publishQoS = publish.qos();
  if (publishQoS.compareTo(this.qos) > 0) {
    publishQoS = this.qos;
  }
  return !publishQoS.equals(QoS.AT_MOST_ONCE);
}

代码示例来源:origin: org.apache.activemq/activemq-osgi

protected void restoreDurableSubs(List<SubscriptionInfo> subs) {
  try {
    for (SubscriptionInfo sub : subs) {
      String name = sub.getSubcriptionName();
      String[] split = name.split(":", 2);
      QoS qoS = QoS.valueOf(split[0]);
      onSubscribe(new Topic(split[1], qoS));
      // mark this durable subscription as restored by Broker
      restoredDurableSubs.add(MQTTProtocolSupport.convertMQTTToActiveMQ(split[1]));
    }
  } catch (IOException e) {
    LOG.warn("Could not restore the MQTT durable subs.", e);
  }
}

代码示例来源:origin: fusesource/mqtt-client

public CONNECT willQos(QoS willQos) {
  this.willQos = (byte) willQos.ordinal();
  return this;
}

代码示例来源:origin: fusesource/mqtt-client

public QoS willQos() {
  return QoS.values()[willQos];
}

代码示例来源:origin: org.apache.activemq/activemq-all

/**
 * Given a PUBLISH command determine if it will expect an ACK based on the
 * QoS of the Publish command and the QoS of this subscription.
 *
 * @param publish
 *        The publish command to inspect.
 *
 * @return true if the client will expect an PUBACK for this PUBLISH.
 */
public boolean expectAck(PUBLISH publish) {
  QoS publishQoS = publish.qos();
  if (publishQoS.compareTo(this.qos) > 0){
    publishQoS = this.qos;
  }
  return !publishQoS.equals(QoS.AT_MOST_ONCE);
}

代码示例来源:origin: org.apache.activemq/activemq-mqtt

protected void restoreDurableSubs(List<SubscriptionInfo> subs) {
  try {
    for (SubscriptionInfo sub : subs) {
      String name = sub.getSubcriptionName();
      String[] split = name.split(":", 2);
      QoS qoS = QoS.valueOf(split[0]);
      onSubscribe(new Topic(split[1], qoS));
      // mark this durable subscription as restored by Broker
      restoredDurableSubs.add(MQTTProtocolSupport.convertMQTTToActiveMQ(split[1]));
    }
  } catch (IOException e) {
    LOG.warn("Could not restore the MQTT durable subs.", e);
  }
}

代码示例来源:origin: fusesource/mqtt-client

public MQTTFrame encode() {
  try {
    DataByteArrayOutputStream os = new DataByteArrayOutputStream();
    QoS qos = qos();
    if(qos != QoS.AT_MOST_ONCE) {
      os.writeShort(messageId);
    }
    for(Topic topic: topics) {
      MessageSupport.writeUTF(os, topic.name());
      os.writeByte(topic.qos().ordinal());
    }
    MQTTFrame frame = new MQTTFrame();
    frame.header(header());
    frame.commandType(TYPE);
    return frame.buffer(os.toBuffer());
  } catch (IOException e) {
    throw new RuntimeException("The impossible happened");
  }
}

代码示例来源:origin: fusesource/mqtt-client

public SUBSCRIBE decode(MQTTFrame frame) throws ProtocolException {
  assert(frame.buffers.length == 1);
  header(frame.header());
  DataByteArrayInputStream is = new DataByteArrayInputStream(frame.buffers[0]);
  QoS qos = qos();
  if(qos != QoS.AT_MOST_ONCE) {
    messageId = is.readShort();
  }
  ArrayList<Topic> list = new ArrayList<Topic>();
  while(is.available() > 0) {
    Topic topic = new Topic(MessageSupport.readUTF(is), QoS.values()[is.readByte()]);
    list.add(topic);
  }
  topics = list.toArray(new Topic[list.size()]);
  return this;
}

代码示例来源:origin: org.apache.activemq/activemq-osgi

/**
 * Given a PUBLISH command determine if it will expect an ACK based on the
 * QoS of the Publish command and the QoS of this subscription.
 *
 * @param publish
 *        The publish command to inspect.
 *
 * @return true if the client will expect an PUBACK for this PUBLISH.
 */
public boolean expectAck(PUBLISH publish) {
  QoS publishQoS = publish.qos();
  if (publishQoS.compareTo(this.qos) > 0){
    publishQoS = this.qos;
  }
  return !publishQoS.equals(QoS.AT_MOST_ONCE);
}

代码示例来源:origin: PerfCake/PerfCake

@Override
public Serializable doSend(Message message, MeasurementUnit measurementUnit) throws Exception {
 String response = null;
 mqttConnection.publish(topicName, message.getPayload().toString().getBytes(Utils.getDefaultEncoding()), QoS.valueOf(qos.toUpperCase()), false);
 if (isResponseExpected) {
   mqttResponse = mqttResponseConnection.receive();
   if (mqttResponse != null) {
    response = new String(mqttResponse.getPayload(), Utils.getDefaultEncoding());
   }
 }
 return response;
}

代码示例来源:origin: org.fusesource.mqtt-client/mqtt-client

protected HeaderBase qos(QoS qos) {
  this.header &= 0xF9;
  this.header |= (qos.ordinal() << 1) & 0x06;
  return this;
}

代码示例来源:origin: fusesource/mqtt-client

} else if ("--will-qos".equals(arg)) {
  int v = Integer.parseInt(shift(argl));
  if( v > QoS.values().length ) {
    stderr("Invalid qos value : " + v);
    displayHelpAndExit(1);
  main.mqtt.setWillQos(QoS.values()[v]);
} else if ("--will-retain".equals(arg)) {
  main.mqtt.setWillRetain(true);
} else if ("-q".equals(arg)) {
  int v = Integer.parseInt(shift(argl));
  if( v > QoS.values().length ) {
    stderr("Invalid qos value : " + v);
    displayHelpAndExit(1);
  qos = QoS.values()[v]; 
} else if ("-t".equals(arg)) {
  main.topics.add(new Topic(shift(argl), qos));

代码示例来源:origin: org.apache.activemq/activemq-mqtt

/**
 * Given a PUBLISH command determine if it will expect an ACK based on the
 * QoS of the Publish command and the QoS of this subscription.
 *
 * @param publish
 *        The publish command to inspect.
 *
 * @return true if the client will expect an PUBACK for this PUBLISH.
 */
public boolean expectAck(PUBLISH publish) {
  QoS publishQoS = publish.qos();
  if (publishQoS.compareTo(this.qos) > 0){
    publishQoS = this.qos;
  }
  return !publishQoS.equals(QoS.AT_MOST_ONCE);
}

代码示例来源:origin: org.apache.activemq/activemq-all

private void restoreDurableQueue(List<ActiveMQQueue> queues) {
  try {
    for (ActiveMQQueue queue : queues) {
      String name = queue.getPhysicalName().substring(VIRTUALTOPIC_CONSUMER_PREFIX.length());
      StringTokenizer tokenizer = new StringTokenizer(name);
      tokenizer.nextToken(":.");
      String qosString = tokenizer.nextToken();
      tokenizer.nextToken();
      String topicName = convertActiveMQToMQTT(tokenizer.nextToken("").substring(1));
      QoS qoS = QoS.valueOf(qosString);
      LOG.trace("Restoring queue subscription: {}:{}", topicName, qoS);
      ConsumerInfo consumerInfo = new ConsumerInfo(getNextConsumerId());
      consumerInfo.setDestination(queue);
      consumerInfo.setPrefetchSize(ActiveMQPrefetchPolicy.DEFAULT_QUEUE_PREFETCH);
      if (protocol.getActiveMQSubscriptionPrefetch() > 0) {
        consumerInfo.setPrefetchSize(protocol.getActiveMQSubscriptionPrefetch());
      }
      consumerInfo.setRetroactive(true);
      consumerInfo.setDispatchAsync(true);
      doSubscribe(consumerInfo, topicName, qoS);
      // mark this durable subscription as restored by Broker
      restoredQueues.add(queue);
    }
  } catch (IOException e) {
    LOG.warn("Could not restore the MQTT queue subscriptions.", e);
  }
}

代码示例来源:origin: org.fusesource.mqtt-client/mqtt-client

public CONNECT willQos(QoS willQos) {
  this.willQos = (byte) willQos.ordinal();
  return this;
}

代码示例来源:origin: fusesource/mqtt-client

} else if ("--will-qos".equals(arg)) {
  int v = Integer.parseInt(shift(argl));
  if( v > QoS.values().length ) {
    stderr("Invalid qos value : " + v);
    displayHelpAndExit(1);
  main.mqtt.setWillQos(QoS.values()[v]);
} else if ("--will-retain".equals(arg)) {
  main.mqtt.setWillRetain(true);
} else if ("-q".equals(arg)) {
  int v = Integer.parseInt(shift(argl));
  if( v > QoS.values().length ) {
    stderr("Invalid qos value : " + v);
    displayHelpAndExit(1);
  main.qos = QoS.values()[v];
} else if ("-r".equals(arg)) {
  main.retain = true;

相关文章