io.vertx.core.json.JsonArray.size()方法的使用及代码示例

x33g5p2x  于2022-01-21 转载在 其他  
字(9.6k)|赞(0)|评价(0)|浏览(137)

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

JsonArray.size介绍

[英]Get the number of values in this JSON array
[中]获取此JSON数组中的值数

代码示例

代码示例来源:origin: eclipse-vertx/vert.x

private void checkFailover(String failedNodeID, JsonObject theHAInfo) {
 try {
  JsonArray deployments = theHAInfo.getJsonArray("verticles");
  String group = theHAInfo.getString("group");
  String chosen = chooseHashedNode(group, failedNodeID.hashCode());
  if (chosen != null && chosen.equals(this.nodeID)) {
   if (deployments != null && deployments.size() != 0) {
    log.info("node" + nodeID + " says: Node " + failedNodeID + " has failed. This node will deploy " + deployments.size() + " deploymentIDs from that node.");
    for (Object obj: deployments) {
     JsonObject app = (JsonObject)obj;
     processFailover(app);
    }
   }
   // Failover is complete! We can now remove the failed node from the cluster map
   clusterMap.remove(failedNodeID);
   runOnContextAndWait(() -> {
    if (failoverCompleteHandler != null) {
     failoverCompleteHandler.handle(failedNodeID, theHAInfo, true);
    }
   });
  }
 } catch (Throwable t) {
  log.error("Failed to handle failover", t);
  runOnContextAndWait(() -> {
   if (failoverCompleteHandler != null) {
    failoverCompleteHandler.handle(failedNodeID, theHAInfo, false);
   }
  });
 }
}

代码示例来源:origin: eclipse-vertx/vert.x

@Test
public void testIterator() {
 jsonArray.add("foo");
 jsonArray.add(123);
 JsonObject obj = new JsonObject().put("foo", "bar");
 jsonArray.add(obj);
 Iterator<Object> iter = jsonArray.iterator();
 assertTrue(iter.hasNext());
 Object entry = iter.next();
 assertEquals("foo", entry);
 assertTrue(iter.hasNext());
 entry = iter.next();
 assertEquals(123, entry);
 assertTrue(iter.hasNext());
 entry = iter.next();
 assertEquals(obj, entry);
 assertFalse(iter.hasNext());
 iter.remove();
 assertFalse(jsonArray.contains(obj));
 assertEquals(2, jsonArray.size());
}

代码示例来源:origin: eclipse-vertx/vert.x

@Test
public void testToJsonArray() {
 List<Object> list = new ArrayList<>();
 list.add("the_string");
 list.add(4);
 list.add(true);
 list.add(new AsciiString("the_charsequence"));
 list.add(new BigInteger("1234567"));
 list.add(Buffer.buffer("hello"));
 list.add(Collections.singletonMap("nested", 4));
 list.add(Arrays.asList(1, 2, 3));
 JsonArray json = (JsonArray) ConversionHelper.toObject(list);
 assertEquals(8, json.size());
 assertEquals("the_string", json.getString(0));
 assertEquals(4, (int)json.getInteger(1));
 assertEquals(true, json.getBoolean(2));
 assertEquals("the_charsequence", json.getString(3));
 assertEquals(1234567, (int)json.getInteger(4));
 assertEquals("hello", new String(json.getBinary(5)));
 assertEquals(new JsonObject().put("nested", 4), json.getJsonObject(6));
 assertEquals(new JsonArray().add(1).add(2).add(3), json.getJsonArray(7));
}

代码示例来源:origin: eclipse-vertx/vert.x

@Test
 public void testChangesNotVisibleArray3() {
  List<Object> list = new ArrayList<>();
  final JsonArray obj = new JsonArray(list);
  eb.<JsonArray>consumer("foo").handler((Message<JsonArray> msg) -> {
   vertx.setTimer(1000, id -> {
    assertEquals(0, msg.body().size());
    testComplete();
   });
  });
  eb.send("foo", obj);
  list.add("uhwqdiuh");
  await();
 }
}

代码示例来源:origin: eclipse-vertx/vert.x

@Test
public void testSize() {
 jsonArray.add("wibble");
 jsonArray.add(true);
 jsonArray.add(123);
 assertEquals(3, jsonArray.size());
}

代码示例来源:origin: eclipse-vertx/vert.x

@Test
public void testClear() {
 jsonArray.add("wibble");
 jsonArray.add(true);
 jsonArray.add(123);
 assertEquals(3, jsonArray.size());
 assertEquals(jsonArray, jsonArray.clear());
 assertEquals(0, jsonArray.size());
 assertTrue(jsonArray.isEmpty());
}

代码示例来源:origin: eclipse-vertx/vert.x

@Test
public void testRemoveByPos() {
 jsonArray.add("wibble");
 jsonArray.add(true);
 jsonArray.add(123);
 assertEquals(3, jsonArray.size());
 assertEquals("wibble", jsonArray.remove(0));
 assertEquals(2, jsonArray.size());
 assertEquals(123, jsonArray.remove(1));
 assertEquals(1, jsonArray.size());
 assertEquals(true, jsonArray.remove(0));
 assertTrue(jsonArray.isEmpty());
}

代码示例来源:origin: eclipse-vertx/vert.x

@Test
public void testChangesNotVisibleArray1() {
 JsonArray obj = new JsonArray();
 eb.<JsonArray>consumer("foo").handler((Message<JsonArray> msg) -> {
  assertEquals(0, msg.body().size());
  testComplete();
 });
 eb.send("foo", obj);
 obj.add("blah");
 await();
}

代码示例来源:origin: eclipse-vertx/vert.x

@Test
public void testCopy() {
 jsonArray.add("foo");
 jsonArray.add(123);
 JsonObject obj = new JsonObject().put("foo", "bar");
 jsonArray.add(obj);
 jsonArray.add(new StringBuilder("eeek"));
 JsonArray copy = jsonArray.copy();
 assertEquals("eeek", copy.getString(3));
 assertNotSame(jsonArray, copy);
 assertEquals(jsonArray, copy);
 assertEquals(4, copy.size());
 assertEquals("foo", copy.getString(0));
 assertEquals(Integer.valueOf(123), copy.getInteger(1));
 assertEquals(obj, copy.getJsonObject(2));
 assertNotSame(obj, copy.getJsonObject(2));
 copy.add("foo");
 assertEquals(4, jsonArray.size());
 jsonArray.add("bar");
 assertEquals(5, copy.size());
}

代码示例来源:origin: eclipse-vertx/vert.x

@Test
public void testRemoveByObject() {
 jsonArray.add("wibble");
 jsonArray.add(true);
 jsonArray.add(123);
 assertEquals(3, jsonArray.size());
 assertTrue(jsonArray.remove("wibble"));
 assertEquals(2, jsonArray.size());
 assertFalse(jsonArray.remove("notthere"));
 assertTrue(jsonArray.remove(true));
 assertTrue(jsonArray.remove(Integer.valueOf(123)));
 assertTrue(jsonArray.isEmpty());
}

代码示例来源:origin: eclipse-vertx/vert.x

@Test
public void testChangesNotVisibleArray2() {
 final JsonArray obj = new JsonArray();
 eb.<JsonArray>consumer("foo").handler((Message<JsonArray> msg) ->  msg.body().add("blah"));
 eb.send("foo", obj);
 vertx.setTimer(1000, id -> {
  assertEquals(0, obj.size());
  testComplete();
 });
 await();
}

代码示例来源:origin: eclipse-vertx/vert.x

private void ping(Message<JsonArray> message) {
 JsonArray jsonArray = message.body();
 for (int i = 0; i < jsonArray.size(); i++) {
  int node = jsonArray.getInteger(i);
  for (int j = 0; j < numAddresses; j++) {
   vertx.eventBus().send(createAddress(node, j), "ping", ar -> {
    if (ar.succeeded()) {
     vertx.eventBus().send("control", "pong");
    } else {
     Throwable cause = ar.cause();
     if (cause instanceof ReplyException) {
      ReplyException replyException = (ReplyException) cause;
      if (replyException.failureType() == ReplyFailure.NO_HANDLERS) {
       vertx.eventBus().send("control", "noHandlers");
       return;
      }
     }
     log.error("Unexpected error during ping (id=" + id + ")", cause);
    }
   });
  }
 }
}

代码示例来源:origin: io.vertx/vertx-core

@Test
public void testIterator() {
 jsonArray.add("foo");
 jsonArray.add(123);
 JsonObject obj = new JsonObject().put("foo", "bar");
 jsonArray.add(obj);
 Iterator<Object> iter = jsonArray.iterator();
 assertTrue(iter.hasNext());
 Object entry = iter.next();
 assertEquals("foo", entry);
 assertTrue(iter.hasNext());
 entry = iter.next();
 assertEquals(123, entry);
 assertTrue(iter.hasNext());
 entry = iter.next();
 assertEquals(obj, entry);
 assertFalse(iter.hasNext());
 iter.remove();
 assertFalse(jsonArray.contains(obj));
 assertEquals(2, jsonArray.size());
}

代码示例来源:origin: io.vertx/vertx-core

@Test
 public void testChangesNotVisibleArray3() {
  List<Object> list = new ArrayList<>();
  final JsonArray obj = new JsonArray(list);
  eb.<JsonArray>consumer("foo").handler((Message<JsonArray> msg) -> {
   vertx.setTimer(1000, id -> {
    assertEquals(0, msg.body().size());
    testComplete();
   });
  });
  eb.send("foo", obj);
  list.add("uhwqdiuh");
  await();
 }
}

代码示例来源:origin: io.vertx/vertx-core

@Test
public void testClear() {
 jsonArray.add("wibble");
 jsonArray.add(true);
 jsonArray.add(123);
 assertEquals(3, jsonArray.size());
 assertEquals(jsonArray, jsonArray.clear());
 assertEquals(0, jsonArray.size());
 assertTrue(jsonArray.isEmpty());
}

代码示例来源:origin: io.vertx/vertx-core

@Test
public void testSize() {
 jsonArray.add("wibble");
 jsonArray.add(true);
 jsonArray.add(123);
 assertEquals(3, jsonArray.size());
}

代码示例来源:origin: io.vertx/vertx-core

@Test
public void testRemoveByPos() {
 jsonArray.add("wibble");
 jsonArray.add(true);
 jsonArray.add(123);
 assertEquals(3, jsonArray.size());
 assertEquals("wibble", jsonArray.remove(0));
 assertEquals(2, jsonArray.size());
 assertEquals(123, jsonArray.remove(1));
 assertEquals(1, jsonArray.size());
 assertEquals(true, jsonArray.remove(0));
 assertTrue(jsonArray.isEmpty());
}

代码示例来源:origin: io.vertx/vertx-core

@Test
public void testChangesNotVisibleArray1() {
 JsonArray obj = new JsonArray();
 eb.<JsonArray>consumer("foo").handler((Message<JsonArray> msg) -> {
  assertEquals(0, msg.body().size());
  testComplete();
 });
 eb.send("foo", obj);
 obj.add("blah");
 await();
}

代码示例来源:origin: io.vertx/vertx-core

@Test
public void testChangesNotVisibleArray2() {
 final JsonArray obj = new JsonArray();
 eb.<JsonArray>consumer("foo").handler((Message<JsonArray> msg) ->  msg.body().add("blah"));
 eb.send("foo", obj);
 vertx.setTimer(1000, id -> {
  assertEquals(0, obj.size());
  testComplete();
 });
 await();
}

代码示例来源:origin: io.vertx/vertx-core

@Test
public void testRemoveByObject() {
 jsonArray.add("wibble");
 jsonArray.add(true);
 jsonArray.add(123);
 assertEquals(3, jsonArray.size());
 assertTrue(jsonArray.remove("wibble"));
 assertEquals(2, jsonArray.size());
 assertFalse(jsonArray.remove("notthere"));
 assertTrue(jsonArray.remove(true));
 assertTrue(jsonArray.remove(Integer.valueOf(123)));
 assertTrue(jsonArray.isEmpty());
}

相关文章