Example #1
0
 @Override
 void formatAsJSON(
     final StringBuilder builder, final int indent, final boolean multiLineRequested) {
   builder.append('{');
   final boolean multiLine = multiLineRequested && map.size() > 1;
   if (multiLine) {
     indent(builder.append('\n'), indent + 1);
   }
   final Iterator<Map.Entry<String, ModelNode>> iterator = map.entrySet().iterator();
   while (iterator.hasNext()) {
     final Map.Entry<String, ModelNode> entry = iterator.next();
     builder.append(quote(entry.getKey()));
     builder.append(" : ");
     final ModelNode value = entry.getValue();
     value.formatAsJSON(builder, multiLine ? indent + 1 : indent, multiLineRequested);
     if (iterator.hasNext()) {
       if (multiLine) {
         indent(builder.append(",\n"), indent + 1);
       } else {
         builder.append(", ");
       }
     }
   }
   if (multiLine) {
     indent(builder.append('\n'), indent);
   }
   builder.append('}');
 }
Example #2
0
 /* (non-Javadoc)
  * @see org.eclipse.debug.internal.ui.viewers.ILabelResult#getDepth()
  */
 public int getDepth() {
   int level = 0;
   ModelNode node = getNode().getParentNode();
   while (node != null) {
     node = node.getParentNode();
     level++;
   }
   return level;
 }
Example #3
0
 @Override
 ModelValue protect() {
   final Map<String, ModelNode> map = this.map;
   for (final ModelNode node : map.values()) {
     node.protect();
   }
   return map.getClass() == LinkedHashMap.class
       ? new ObjectModelValue(Collections.unmodifiableMap(map))
       : this;
 }
Example #4
0
 @Override
 List<ModelNode> asList() {
   final ArrayList<ModelNode> nodes = new ArrayList<ModelNode>();
   for (final Map.Entry<String, ModelNode> entry : map.entrySet()) {
     final ModelNode node = new ModelNode();
     node.set(entry.getKey(), entry.getValue());
     nodes.add(node);
   }
   return nodes;
 }
Example #5
0
  @Test
  public void testOutputJSONString() {
    final StringWriter stringWriter = new StringWriter();
    final PrintWriter writer = new PrintWriter(stringWriter, true);
    node.writeJSONString(writer, false);
    final String json = stringWriter.toString();
    assertNotNull(json);
    assertEquals(true, json.contains("\n"));
    assertEquals(true, json.contains("    "));
    assertThat(json, containsString("\"description\" : \"A managable resource\","));
    assertThat(
        json, containsString("\"type\" : {\n        \"TYPE_MODEL_VALUE\" : \"OBJECT\"\n    },"));
    assertThat(json, containsString("\"tail-comment-allowed\" : false,"));
    assertThat(json, containsString("\"attributes\" : {"));
    assertThat(json, containsString("\"foo\" : \"some description of foo\","));
    assertThat(json, containsString("\"bar\" : \"some description of bar\","));
    assertThat(json, containsString("\"list\" : ["));
    assertThat(json, containsString("\"value1\","));
    assertThat(json, containsString("\"value2\","));
    assertThat(json, containsString("\"value3\""));
    assertThat(json, containsString("\"value-type\" : {"));
    assertThat(
        json,
        containsString("\"size\" : {\n            \"TYPE_MODEL_VALUE\" : \"INT\"\n        },"));
    assertThat(
        json,
        containsString("\"color\" : {\n            \"TYPE_MODEL_VALUE\" : \"STRING\"\n        }"));
    assertThat(json, containsString("\"big-decimal-value\" : 10.0,"));
    assertThat(json, containsString("\"big-integer-value\" : 10,"));
    assertThat(
        json, containsString("\"bytes-value\" : {\n        \"BYTES_VALUE\" : \"ADc=\"\n    },"));
    assertThat(json, containsString("\"double-value\" : 55.0,"));
    assertThat(json, containsString("\"max-double-value\" : 1.7976931348623157E308,"));
    assertThat(json, containsString("\"int-value\" : 12,"));
    assertThat(json, containsString("\"max-int-value\" : 2147483647,"));
    assertThat(json, containsString("\"long-value\" : 14"));
    assertThat(json, containsString("\"max-long-value\" : 9223372036854775807"));
    assertThat(
        json,
        containsString(
            "\n    \"property-value\" : {\n        \"property\" : {\n            \"TYPE_MODEL_VALUE\" : \"PROPERTY\"\n        }\n    },"));
    assertThat(
        json,
        containsString(
            "\"expression-value\" : {\n        \"EXPRESSION_VALUE\" : \"$expression\"\n    }"));
    assertThat(json, containsString("\"true-value\" : true"));
    assertThat(json, containsString("\"false-value\" : false"));
    assertThat(json, containsString("\n}"));

    final String compressedJson = node.toJSONString(true);
    assertNotNull(compressedJson);
    assertEquals(false, compressedJson.contains("\n"));
    assertEquals(false, compressedJson.contains("    "));
  }
  @AfterClass
  public static void tearDown() throws Exception {

    final ModelNode address = new ModelNode();
    address.add("subsystem", "resource-adapters");
    address.add("resource-adapter", "as7_1452.rar");
    address.protect();

    remove(address);
    closeModelControllerClient();
  }
Example #7
0
 ObjectModelValue(final DataInput in) throws IOException {
   super(ModelType.OBJECT);
   final int count = in.readInt();
   final LinkedHashMap<String, ModelNode> map = new LinkedHashMap<String, ModelNode>();
   for (int i = 0; i < count; i++) {
     final String key = in.readUTF();
     final ModelNode value = new ModelNode();
     value.readExternal(in);
     map.put(key, value);
   }
   this.map = map;
 }
Example #8
0
 @Test
 public void testFromBase64() {
   final ByteArrayOutputStream os = new ByteArrayOutputStream();
   try {
     node.writeBase64(os);
     ModelNode newNode = ModelNode.fromBase64(new ByteArrayInputStream(os.toByteArray()));
     assertNotNull(newNode);
     assertEquals(node, newNode);
   } catch (final IOException e) {
     fail("IOException not expected: " + e.getMessage());
   }
 }
Example #9
0
 @Test
 public void testOutputDMRString() {
   final StringWriter stringWriter = new StringWriter();
   final PrintWriter writer = new PrintWriter(stringWriter, true);
   node.writeString(writer, false);
   final String dmrString = stringWriter.toString();
   assertThat(dmrString, containsString("\"description\" => \"A managable resource\","));
   assertThat(dmrString, containsString("\"type\" => OBJECT,"));
   assertThat(dmrString, containsString("\"tail-comment-allowed\" => false,"));
   assertThat(
       dmrString,
       containsString(
           "\"attributes\" => {\n        \"foo\" => \"some description of foo\",\n        \"bar\" => \"some description of bar\",\n"));
   assertThat(
       dmrString,
       containsString(
           "\n        \"list\" => [\n            \"value1\",\n            \"value2\",\n            \"value3\"\n        ]\n    },"));
   assertThat(
       dmrString,
       containsString(
           "\n    \"value-type\" => {\n        \"size\" => INT,\n        \"color\" => STRING\n    },"));
   assertThat(dmrString, containsString("\"big-decimal-value\" => big decimal 10.0,"));
   assertThat(dmrString, containsString("\"big-integer-value\" => big integer 10,"));
   assertThat(dmrString, containsString("\"bytes-value\" => bytes {\n        0x00, 0x37\n    },"));
   assertThat(dmrString, containsString("\"double-value\" => 55.0,"));
   assertThat(dmrString, containsString("\"max-double-value\" => 1.7976931348623157E308,"));
   assertThat(dmrString, containsString("\"int-value\" => 12,"));
   assertThat(dmrString, containsString("\"max-int-value\" => 2147483647,"));
   assertThat(dmrString, containsString("\"long-value\" => 14L,"));
   assertThat(dmrString, containsString("\"max-long-value\" => 9223372036854775807L,"));
   assertThat(dmrString, containsString("\"property-value\" => (\"property\" => PROPERTY),"));
   assertThat(dmrString, containsString("\"expression-value\" => expression \"$expression\","));
   assertThat(dmrString, containsString("\"true-value\" => true,"));
   assertThat(dmrString, containsString("\"false-value\" => false"));
 }
Example #10
0
 @Test
 public void testWriteBase64() {
   final ByteArrayOutputStream os = new ByteArrayOutputStream();
   try {
     node.writeBase64(os);
     assertEquals(701, os.toByteArray().length);
   } catch (final IOException e) {
     fail("IOException not expected: " + e.getMessage());
   }
 }
Example #11
0
 @Test
 public void testFromString() {
   final ModelNode parsedNode = ModelNode.fromString(node.toString());
   assertEquals(node, parsedNode);
 }
Example #12
0
 @Test
 public void testFromJSONString() {
   final ModelNode parsedNode = ModelNode.fromJSONString(node.toJSONString(true));
   // TODO why not a simple equality check?
   assertThat(
       parsedNode.toString(), containsString("\"description\" => \"A managable resource\","));
   assertThat(parsedNode.toString(), containsString("\"type\" => OBJECT,"));
   assertThat(parsedNode.toString(), containsString("\"tail-comment-allowed\" => false,"));
   assertThat(
       parsedNode.toString(),
       containsString(
           "\"attributes\" => {\n        \"foo\" => \"some description of foo\",\n        \"bar\" => \"some description of bar\",\n"));
   assertThat(
       parsedNode.toString(),
       containsString(
           "\n        \"list\" => [\n            \"value1\",\n            \"value2\",\n            \"value3\"\n        ]\n    },"));
   assertThat(
       parsedNode.toString(),
       containsString(
           "\n    \"value-type\" => {\n        \"size\" => INT,\n        \"color\" => STRING\n    },"));
   assertThat(parsedNode.toString(), containsString("\"big-decimal-value\" => big decimal 10.0,"));
   assertThat(parsedNode.toString(), containsString("\"big-integer-value\" => 10,"));
   assertThat(
       parsedNode.toString(),
       containsString("\"bytes-value\" => bytes {\n        0x00, 0x37\n    },"));
   assertThat(parsedNode.toString(), containsString("\"double-value\" => big decimal 55.0,"));
   assertThat(
       parsedNode.toString(),
       containsString("\"max-double-value\" => big decimal 1.7976931348623157E+308,"));
   assertThat(parsedNode.toString(), containsString("\"int-value\" => 12,"));
   assertThat(parsedNode.toString(), containsString("\"max-int-value\" => 2147483647,"));
   assertThat(parsedNode.toString(), containsString("\"long-value\" => 14,"));
   assertThat(
       parsedNode.toString(), containsString("\"max-long-value\" => 9223372036854775807L,"));
   assertThat(
       parsedNode.toString(), containsString("\"property-value\" => {\"property\" => PROPERTY},"));
   assertThat(
       parsedNode.toString(),
       containsString("\"expression-value\" => expression \"$expression\","));
   assertThat(parsedNode.toString(), containsString("\"true-value\" => true,"));
   assertThat(parsedNode.toString(), containsString("\"false-value\" => false"));
 }
Example #13
0
 @Before
 public void setUp() {
   node = new ModelNode();
   node.get("description").set("A managable resource");
   node.get("type").set(ModelType.OBJECT);
   node.get("tail-comment-allowed").set(false);
   node.get("attributes").get("foo").set("some description of foo");
   node.get("attributes").get("bar").set("some description of bar");
   node.get("attributes").get("list").add("value1");
   node.get("attributes").get("list").add("value2");
   node.get("attributes").get("list").add("value3");
   node.get("value-type").get("size").set(ModelType.INT);
   node.get("value-type").get("color").set(ModelType.STRING);
   node.get("big-decimal-value").set(BigDecimal.valueOf(10.0));
   node.get("big-integer-value").set(BigInteger.TEN);
   node.get("bytes-value").set(new byte[] {(byte) 0, (byte) 55});
   node.get("double-value").set(Double.valueOf("55"));
   node.get("max-double-value").set(Double.MAX_VALUE);
   node.get("int-value").set(Integer.valueOf("12"));
   node.get("max-int-value").set(Integer.MAX_VALUE);
   node.get("long-value").set(Long.valueOf("14"));
   node.get("max-long-value").set(Long.MAX_VALUE);
   node.get("property-value").set("property", ModelType.PROPERTY);
   node.get("expression-value").setExpression("$expression");
   node.get("true-value").set(true);
   node.get("false-value").set(false);
 }
  // @BeforeClass - called from @Deployment
  public static void setUp() throws Exception {
    initModelControllerClient("localhost", 9999);

    final ModelNode address = new ModelNode();
    address.add("subsystem", "resource-adapters");
    address.add("resource-adapter", "as7_1452.rar");
    address.protect();

    final ModelNode operation = new ModelNode();
    operation.get(OP).set("add");
    operation.get(OP_ADDR).set(address);
    operation.get("archive").set("as7_1452.rar");
    operation.get("transaction-support").set("NoTransaction");
    executeOperation(operation);

    final ModelNode addressConfigRes = address.clone();
    addressConfigRes.add("config-properties", "Property");
    addressConfigRes.protect();

    final ModelNode operationConfigRes = new ModelNode();
    operationConfigRes.get(OP).set("add");
    operationConfigRes.get(OP_ADDR).set(addressConfigRes);
    operationConfigRes.get("value").set("A");
    executeOperation(operationConfigRes);

    final ModelNode addressAdmin = address.clone();
    addressAdmin.add("admin-objects", "java:jboss/ConfigPropertyAdminObjectInterface1");
    addressAdmin.protect();

    final ModelNode operationAdmin = new ModelNode();
    operationAdmin.get(OP).set("add");
    operationAdmin.get(OP_ADDR).set(addressAdmin);
    operationAdmin
        .get("class-name")
        .set(
            "org.jboss.as.test.smoke.embedded.deployment.rar.configproperty.ConfigPropertyAdminObjectImpl");
    operationAdmin.get("jndi-name").set(AO_JNDI_NAME);
    executeOperation(operationAdmin);

    final ModelNode addressConfigAdm = addressAdmin.clone();
    addressConfigAdm.add("config-properties", "Property");
    addressConfigAdm.protect();

    final ModelNode operationConfigAdm = new ModelNode();
    operationConfigAdm.get(OP).set("add");
    operationConfigAdm.get(OP_ADDR).set(addressConfigAdm);
    operationConfigAdm.get("value").set("C");
    executeOperation(operationConfigAdm);

    final ModelNode addressConn = address.clone();
    addressConn.add("connection-definitions", "java:jboss/ConfigPropertyConnectionFactory1");
    addressConn.protect();

    final ModelNode operationConn = new ModelNode();
    operationConn.get(OP).set("add");
    operationConn.get(OP_ADDR).set(addressConn);
    operationConn
        .get("class-name")
        .set(
            "org.jboss.as.test.smoke.embedded.deployment.rar.configproperty.ConfigPropertyManagedConnectionFactory");
    operationConn.get("jndi-name").set(CF_JNDI_NAME);
    operationConn.get("pool-name").set("ConfigPropertyConnectionFactory");
    executeOperation(operationConn);

    final ModelNode addressConfigConn = addressConn.clone();
    addressConfigConn.add("config-properties", "Property");
    addressConfigConn.protect();

    final ModelNode operationConfigConn = new ModelNode();
    operationConfigConn.get(OP).set("add");
    operationConfigConn.get(OP_ADDR).set(addressConfigConn);
    operationConfigConn.get("value").set("B");
    executeOperation(operationConfigConn);
  }