Package org.apache.isis.viewer.restfulobjects.applib.domainobjects

Examples of org.apache.isis.viewer.restfulobjects.applib.domainobjects.DomainObjectMemberRepresentation


        final RestfulResponse<JsonRepresentation> restResp = client.follow(link);
        final JsonRepresentation entityRepr = restResp.getEntity();
        domainObjectRepr = entityRepr.as(DomainObjectRepresentation.class);

        // and then members (types)
        DomainObjectMemberRepresentation property;
        ScalarValueRepresentation scalarRepr;

        property = domainObjectRepr.getProperty("bigDecimalProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("big-decimal(30,10)"));
        assertThat(property.getXIsisFormat(), is("javamathbigdecimal"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        BigDecimal bigDecimal = scalarRepr.asBigDecimal(property.getFormat());
        assertThat(bigDecimal, is(new BigDecimal("12345678901234567890.1234567890")));

        property = domainObjectRepr.getProperty("bigDecimalProperty2");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("big-decimal(18,2)"));
        assertThat(property.getXIsisFormat(), is("javamathbigdecimal"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        BigDecimal bigDecimal2 = scalarRepr.asBigDecimal(property.getFormat());
        assertThat(bigDecimal2, is(new BigDecimal("123.45")));

        property = domainObjectRepr.getProperty("bigIntegerProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("big-integer"));
        assertThat(property.getXIsisFormat(), is("javamathbiginteger"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        BigInteger bigInteger = scalarRepr.asBigInteger(property.getFormat());
        assertThat(bigInteger, is(new BigInteger("123456789012345678")));

        property = domainObjectRepr.getProperty("bigIntegerProperty2");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("big-integer"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        BigInteger bigInteger2 = scalarRepr.asBigInteger(property.getFormat());
        assertThat(bigInteger2, is(new BigInteger("12345")));

        property = domainObjectRepr.getProperty("javaSqlDateProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("date"));
        assertThat(property.getXIsisFormat(), is("javasqldate"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        assertThat(scalarRepr.asString(), is("2014-04-24"));
        assertThat(scalarRepr.asDate(), is(asDate("2014-04-24")));

        property = domainObjectRepr.getProperty("javaSqlTimeProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("time"));
        assertThat(property.getXIsisFormat(), is("javasqltime"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        assertThat(scalarRepr.asString(), is("12:34:45"));
        assertThat(scalarRepr.asTime(), is(asDateTime("1970-01-01T12:34:45Z")));

        property = domainObjectRepr.getProperty("javaSqlTimestampProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("utc-millisec"));
        assertThat(property.getXIsisFormat(), is("javasqltimestamp"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isInt() || scalarRepr.isLong(), is(true));
        Long aLong = scalarRepr.asLong();
        assertThat(aLong, is(new Long("1234567890")));

        property = domainObjectRepr.getProperty("javaUtilDateProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("date-time"));
        assertThat(property.getXIsisFormat(), is("javautildate"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        Date utilDate = scalarRepr.asDateTime();
        assertThat(utilDate, is(asDateTime("2013-05-25T12:34:45Z")));
        assertThat(scalarRepr.asString(), is("2013-05-25T12:34:45Z"));

        property = domainObjectRepr.getProperty("myEnum");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("string"));
        assertThat(property.getXIsisFormat(), is("string"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        String myEnumStr = scalarRepr.asString();
        assertThat(myEnumStr, is("RED"));
    }
View Full Code Here


        final LinkRepresentation link = Util.serviceActionListInvokeFirstReference(client, "WrapperValuedEntities");
        domainObjectRepr = client.follow(link).getEntity().as(DomainObjectRepresentation.class);


        // and then members (types)
        DomainObjectMemberRepresentation property;
        ScalarValueRepresentation scalarRepr;
       
        property = domainObjectRepr.getProperty("booleanProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is(nullValue()));
        assertThat(property.getXIsisFormat(), is("boolean"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isBoolean(), is(true));
        Boolean booleanValue = scalarRepr.asBoolean();
        assertThat(booleanValue, is(true));
       
        property = domainObjectRepr.getProperty("byteProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("int"));
        assertThat(property.getXIsisFormat(), is("byte"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isIntegralNumber(), is(true));
        Byte byteValue = scalarRepr.asByte();
        assertThat(byteValue, is((byte)123));

        property = domainObjectRepr.getProperty("shortProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("int"));
        assertThat(property.getXIsisFormat(), is("short"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isIntegralNumber(), is(true));
        Short shortValue = scalarRepr.asShort();
        assertThat(shortValue, is((short)32123));

        property = domainObjectRepr.getProperty("integerProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("int"));
        assertThat(property.getXIsisFormat(), is("int"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isInt(), is(true));
        Integer intValue = scalarRepr.asInt();
        assertThat(intValue, is(987654321));

        property = domainObjectRepr.getProperty("longProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("int"));
        assertThat(property.getXIsisFormat(), is("long"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isLong(), is(true));
        Long longValue = scalarRepr.asLong();
        assertThat(longValue, is(2345678901234567890L));

        property = domainObjectRepr.getProperty("characterProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is(nullValue()));
        assertThat(property.getXIsisFormat(), is("char"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        Character charValue = scalarRepr.asChar();
        assertThat(charValue, is('a'));
       
        property = domainObjectRepr.getProperty("floatProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("decimal"));
        assertThat(property.getXIsisFormat(), is("float"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isNumber(), is(true));
        assertThat(scalarRepr.isIntegralNumber(), is(false));
        Float floatValue = scalarRepr.asFloat();
        assertThat(floatValue, is(12345678901234567890.1234567890F));
       
        property = domainObjectRepr.getProperty("doubleProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("decimal"));
        assertThat(property.getXIsisFormat(), is("double"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isDouble(), is(true));
        Double doubleValue = scalarRepr.asDouble();
        assertThat(doubleValue, is(12345678901234567890.1234567890));
       
       
        // and then member types have links to details (selected ones inspected only)
        property = domainObjectRepr.getProperty("booleanProperty");
        assertThat(property.getLinkWithRel(Rel.DETAILS),
                isLink()
                    .href(matches(".+\\/objects\\/WRPV\\/\\d+\\/properties\\/booleanProperty"))
                    .httpMethod(RestfulHttpMethod.GET)
                    .type(RepresentationType.OBJECT_PROPERTY.getMediaType()));

        property = domainObjectRepr.getProperty("byteProperty");
        assertThat(property.getLinkWithRel(Rel.DETAILS),
                isLink()
                    .href(matches(".+\\/objects\\/WRPV\\/\\d+\\/properties\\/byteProperty"))
                    .httpMethod(RestfulHttpMethod.GET)
                    .type(RepresentationType.OBJECT_PROPERTY.getMediaType()));

        property = domainObjectRepr.getProperty("shortProperty");
        assertThat(property.getLinkWithRel(Rel.DETAILS),
                isLink()
                    .href(matches(".+\\/objects\\/WRPV\\/\\d+\\/properties\\/shortProperty"))
                    .httpMethod(RestfulHttpMethod.GET)
                    .type(RepresentationType.OBJECT_PROPERTY.getMediaType()));
    }
View Full Code Here

        // when
        final LinkRepresentation link = Util.serviceActionListInvokeFirstReference(client, "JodaValuedEntities");
        domainObjectRepr = client.follow(link).getEntity().as(DomainObjectRepresentation.class);

        // and then members (types)
        DomainObjectMemberRepresentation property;
        ScalarValueRepresentation scalarRepr;

        property = domainObjectRepr.getProperty("dateTimeProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("date-time"));
        assertThat(property.getXIsisFormat(), is("jodadatetime"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        assertThat(scalarRepr.asDateTime(), is(asDateTime("2010-03-31T09:50:43Z")));
        assertThat(scalarRepr.asString(), is("2010-03-31T09:50:43Z"));

        property = domainObjectRepr.getProperty("localDateProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("date"));
        assertThat(property.getXIsisFormat(), is("jodalocaldate"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        assertThat(scalarRepr.asDate(), is(asDate("2008-03-21")));
        assertThat(scalarRepr.asString(), is("2008-03-21"));

        property = domainObjectRepr.getProperty("localDateTimeProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("date-time"));
        assertThat(property.getXIsisFormat(), is("jodalocaldatetime"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));

        final LocalDateTime expected = new LocalDateTime(2009, 4, 29, 13, 45, 22);

        assertThat(scalarRepr.asDateTime(), is(expected.toDate()));
        assertThat(scalarRepr.asString(), is(ISODateTimeFormat.dateTimeNoMillis().withZoneUTC().print(expected.toDateTime())));

        // and then member types have links to details (selected ones inspected only)
        property = domainObjectRepr.getProperty("localDateProperty");
        assertThat(property.getLinkWithRel(Rel.DETAILS),
                isLink()
                    .href(matches(".+\\/objects\\/JODA\\/\\d+\\/properties\\/localDateProperty"))
                    .httpMethod(RestfulHttpMethod.GET)
                    .type(RepresentationType.OBJECT_PROPERTY.getMediaType()));

        property = domainObjectRepr.getProperty("localDateTimeProperty");
        assertThat(property.getLinkWithRel(Rel.DETAILS),
                isLink()
                    .href(matches(".+\\/objects\\/JODA\\/\\d+\\/properties\\/localDateTimeProperty"))
                    .httpMethod(RestfulHttpMethod.GET)
                    .type(RepresentationType.OBJECT_PROPERTY.getMediaType()));
    }
View Full Code Here

        // then actions
        final JsonRepresentation actions = domainObjectRepr.getActions();
        assertThat(actions.size(), is(3));

        final DomainObjectMemberRepresentation containsAction = domainObjectRepr.getAction("contains");
        assertThat(containsAction.getString("memberType"), is("action"));
        assertThat(containsAction.getString("id"), is("contains"));

        LinkRepresentation containsActionLink = containsAction.getLinkWithRel(Rel.DETAILS.andParam("action", "contains"));
        assertThat(containsActionLink.getRel(), is(Rel.DETAILS.andParam("action", "contains")));
        assertThat(containsActionLink.getHref(), is(self.getHref() + "/actions/contains"));
        assertThat(containsActionLink.getType(), is(RepresentationType.OBJECT_ACTION.getMediaType()));
        assertThat(containsActionLink.getHttpMethod(), is(RestfulHttpMethod.GET));

        // can also look up with abbreviated parameterized version of Rel
        containsActionLink = containsAction.getLinkWithRel(Rel.DETAILS);
        assertThat(containsActionLink.getRel(), is("urn:org.restfulobjects:rels/details;action=\"contains\""));
        assertThat(containsActionLink.getHref(), is(self.getHref() + "/actions/contains"));
        assertThat(containsActionLink.getType(), is(RepresentationType.OBJECT_ACTION.getMediaType()));
        assertThat(containsActionLink.getHttpMethod(), is(RestfulHttpMethod.GET));
View Full Code Here

        // when
        final LinkRepresentation link = Util.serviceActionListInvokeFirstReference(client, "ApplibValuedEntities");
        domainObjectRepr = client.follow(link).getEntity().as(DomainObjectRepresentation.class);

        // and then members (types)
        DomainObjectMemberRepresentation property;
        ScalarValueRepresentation scalarRepr;

       
        // copy from Get_givenEntityWithPrimitiveProperties_thenRepresentation_ok
    }
View Full Code Here

       
        assertThat(repr.getSelf(), isLink().httpMethod(RestfulHttpMethod.GET).build());
       
        assertThat(repr.getMembers(), isMap());
        assertThat(repr.getMembers().size(), is(2));
        DomainObjectMemberRepresentation listMemberRepr = repr.getAction("list");
       
        assertThat(listMemberRepr.getMemberType(), is("action"));
        assertThat(listMemberRepr.getDisabledReason(), is(nullValue()));
        assertThat(listMemberRepr.getLinks(), isArray());
        assertThat(listMemberRepr.getLinks().size(), is(1));
       
        LinkRepresentation listMemberReprDetailsLink = listMemberRepr.getLinkWithRel(Rel.DETAILS);
        assertThat(listMemberReprDetailsLink, isLink(client)
                                       .httpMethod(RestfulHttpMethod.GET)
                                       .href(endsWith("/services/JdkValuedEntities/actions/list"))
                                       .returning(HttpStatusCode.OK)
                                       .responseEntityWithSelfHref(listMemberReprDetailsLink.getHref()).build());
View Full Code Here

        assertThat(jsonResp.getStatus(), is(HttpStatusCode.OK));
        final DomainObjectRepresentation repr = jsonResp.getEntity();

        assertThat(repr, isMap());

        final DomainObjectMemberRepresentation actionRepr = repr.getAction("visibleAndInvocableAction");
        assertThat(actionRepr, isMap());

        assertThat(actionRepr.getDisabledReason(), is(nullValue()));

        final LinkRepresentation actionDetailsLink = actionRepr.getLinkWithRel(Rel.DETAILS);
        assertThat(actionDetailsLink, isLink(this.client)
                                        .rel(Rel.DETAILS)
                                        .httpMethod(RestfulHttpMethod.GET)
                                        .href(Matchers.endsWith(":39393/services/BusinessRulesEntities/actions/visibleAndInvocableAction"))
                                        .returning(HttpStatusCode.OK).build());
View Full Code Here

        // then
        assertThat(jsonResp.getStatus(), is(HttpStatusCode.OK));
        final DomainObjectRepresentation repr = jsonResp.getEntity();

        final DomainObjectMemberRepresentation actionRepr = repr.getAction("visibleButNotInvocableAction");
        assertThat(actionRepr, isMap());

        assertThat(actionRepr.getDisabledReason(), is("Always disabled"));

        final LinkRepresentation actionDetailsLink = actionRepr.getLinkWithRel(Rel.DETAILS);

        // even though not invocable, still can traverse to its details page
        assertThat(actionDetailsLink, isLink(this.client)
                                        .href(Matchers.endsWith(":39393/services/BusinessRulesEntities/actions/visibleButNotInvocableAction"))
                                        .returning(HttpStatusCode.OK).build());
View Full Code Here

        // when
        final LinkRepresentation link = Util.serviceActionListInvokeFirstReference(client, "PrimitiveValuedEntities");
        domainObjectRepr = client.follow(link).getEntity().as(DomainObjectRepresentation.class);

        // then members (types)
        DomainObjectMemberRepresentation property;
        ScalarValueRepresentation scalarRepr;
       
        property = domainObjectRepr.getProperty("booleanProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is(nullValue()));
        assertThat(property.getXIsisFormat(), is("boolean"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isBoolean(), is(true));
        Boolean booleanValue = scalarRepr.asBoolean();
        assertThat(booleanValue, is(equalTo(Boolean.TRUE)));
       
        property = domainObjectRepr.getProperty("byteProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("int"));
        assertThat(property.getXIsisFormat(), is("byte"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isIntegralNumber(), is(true));
        Byte byteValue = scalarRepr.asByte();
        assertThat(byteValue, is((byte)123));

        property = domainObjectRepr.getProperty("shortProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("int"));
        assertThat(property.getXIsisFormat(), is("short"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isIntegralNumber(), is(true));
        Short shortValue = scalarRepr.asShort();
        assertThat(shortValue, is((short)32123));

        property = domainObjectRepr.getProperty("intProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("int"));
        assertThat(property.getXIsisFormat(), is("int"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isInt(), is(true));
        Integer intValue = scalarRepr.asInt();
        assertThat(intValue, is(987654321));

        property = domainObjectRepr.getProperty("longProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("int"));
        assertThat(property.getXIsisFormat(), is("long"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isLong(), is(true));
        Long longValue = scalarRepr.asLong();
        assertThat(longValue, is(2345678901234567890L));

        property = domainObjectRepr.getProperty("charProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is(nullValue()));
        assertThat(property.getXIsisFormat(), is("char"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isString(), is(true));
        Character charValue = scalarRepr.asChar();
        assertThat(charValue, is('a'));
       
        property = domainObjectRepr.getProperty("floatProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("decimal"));
        assertThat(property.getXIsisFormat(), is("float"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isNumber(), is(true));
        assertThat(scalarRepr.isIntegralNumber(), is(false));
        Float floatValue = scalarRepr.asFloat();
        assertThat(floatValue, is(12345678901234567890.1234567890F));
       
        property = domainObjectRepr.getProperty("doubleProperty");
        assertThat(property.getMemberType(), is("property"));
        assertThat(property.getFormat(), is("decimal"));
        assertThat(property.getXIsisFormat(), is("double"));
        scalarRepr = property.getRepresentation("value").as(ScalarValueRepresentation.class);
        assertThat(scalarRepr.isDouble(), is(true));
        Double doubleValue = scalarRepr.asDouble();
        assertThat(doubleValue, is(12345678901234567890.1234567890));
       


        // and then member types have links to details (selected ones inspected only)
        property = domainObjectRepr.getProperty("booleanProperty");
        assertThat(property.getLinkWithRel(Rel.DETAILS),
                isLink()
                    .href(matches(".+\\/objects\\/PRMV\\/\\d+\\/properties\\/booleanProperty"))
                    .httpMethod(RestfulHttpMethod.GET)
                    .type(RepresentationType.OBJECT_PROPERTY.getMediaType()));

        property = domainObjectRepr.getProperty("byteProperty");
        assertThat(property.getLinkWithRel(Rel.DETAILS),
                isLink()
                    .href(matches(".+\\/objects\\/PRMV\\/\\d+\\/properties\\/byteProperty"))
                    .httpMethod(RestfulHttpMethod.GET)
                    .type(RepresentationType.OBJECT_PROPERTY.getMediaType()));

        property = domainObjectRepr.getProperty("shortProperty");
        assertThat(property.getLinkWithRel(Rel.DETAILS),
                isLink()
                    .href(matches(".+\\/objects\\/PRMV\\/\\d+\\/properties\\/shortProperty"))
                    .httpMethod(RestfulHttpMethod.GET)
                    .type(RepresentationType.OBJECT_PROPERTY.getMediaType()));

        // can navigate using fully qualified form of Rel
        property = domainObjectRepr.getProperty("booleanProperty");
        assertThat(property.getLinkWithRel(Rel.DETAILS.andParam("property", "booleanProperty")),
                isLink()
                        .href(matches(".+\\/objects\\/PRMV\\/\\d+\\/properties\\/booleanProperty"))
                        .httpMethod(RestfulHttpMethod.GET)
                        .type(RepresentationType.OBJECT_PROPERTY.getMediaType()));
View Full Code Here

        // when
        final LinkRepresentation link = Util.domainObjectLink(client, "JdkValuedEntities");
        domainObjectRepr = client.follow(link).getEntity().as(DomainObjectRepresentation.class);

        // and then members (types)
        DomainObjectMemberRepresentation property;
        ScalarValueRepresentation scalarRepr;

       
        // copy from Get_givenEntityWithPrimitiveProperties_thenRepresentation_ok
    }
View Full Code Here

TOP

Related Classes of org.apache.isis.viewer.restfulobjects.applib.domainobjects.DomainObjectMemberRepresentation

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.