/** * For those {@link Rel}s that also take a param */ public String andParam(String paramName, String paramValue) { return getName() + (relDef.canAddParams() ?";" + paramName + "=" + "\"" + paramValue + "\"" :""); }
public R withLink(final Rel rel, final JsonRepresentation link) { final String relStr = link.getString("rel"); if (relStr == null || !relStr.equals(rel.getName())) { throw new IllegalArgumentException("Provided link does not have a 'rel' of '" + rel.getName() + "'; was: " + link); } if (link != null) { getLinks().arrayAdd(link); } return cast(this); }
public static LinkBuilder newLinkToLayoutBuilder( final RendererContext resourceContext, final ObjectSpecification objectSpec) { final Rel rel = Rel.LAYOUT; final String typeFullName = objectSpec.getSpecId().asString(); final String url = String.format("domain-types/%s/layout", typeFullName); return LinkBuilder.newBuilder(resourceContext, rel.getName(), RepresentationType.LAYOUT, url); }
@Override public LinkBuilder builder(final Rel rel) { final LinkBuilder linkBuilder = LinkBuilder.newBuilder(rendererContext, relElseDefault(rel).getName(), RepresentationType.DOMAIN_OBJECT, linkRef(new StringBuilder()).toString()); linkBuilder.withTitle(objectAdapter.titleString()); return linkBuilder; }
public static LinkBuilder newLinkToObjectLayoutBuilder(final RendererContext rendererContext, final ObjectAdapter objectAdapter) { final Rel rel = Rel.OBJECT_LAYOUT; String domainType = OidUtils.getDomainType(objectAdapter); String instanceId = OidUtils.getInstanceId(objectAdapter); final String url = "objects/" + domainType + "/" + instanceId + "/object-layout"; return LinkBuilder.newBuilder(rendererContext, rel.getName(), RepresentationType.OBJECT_LAYOUT, url); }
public static LinkBuilder newLinkToBuilder(final RendererContext resourceContext, final Rel rel, final ObjectSpecification objectSpecification, final ObjectAction objectAction) { final String domainType = objectSpecification.getSpecId().asString(); final String actionId = objectAction.getId(); final String url = "domain-types/" + domainType + "/actions/" + actionId; return LinkBuilder.newBuilder(resourceContext, rel.getName(), RepresentationType.ACTION_DESCRIPTION, url); }
public static LinkBuilder newLinkToBuilder(final RendererContext resourceContext, final Rel rel, final ObjectSpecification objectSpecification, final OneToOneAssociation property) { final String domainType = objectSpecification.getSpecId().asString(); final String propertyId = property.getId(); final String url = "domain-types/" + domainType + "/properties/" + propertyId; return LinkBuilder.newBuilder(resourceContext, rel.getName(), RepresentationType.PROPERTY_DESCRIPTION, url); }
@Test public void iana_namespace() throws Exception { String name = Rel.SELF.getName(); assertThat(name, is(equalTo("self"))); }
public static LinkBuilder newLinkToBuilder(final RendererContext resourceContext, final Rel rel, final ObjectSpecification objectSpecification, final OneToManyAssociation collection) { final String domainType = objectSpecification.getSpecId().asString(); final String collectionId = collection.getId(); final String url = "domain-types/" + domainType + "/collections/" + collectionId; return LinkBuilder.newBuilder(resourceContext, rel.getName(), RepresentationType.COLLECTION_DESCRIPTION, url); }
public static LinkBuilder newLinkToBuilder(final RendererContext rendererContext, final Rel rel, final ObjectAdapter objectAdapter) { String domainType = OidUtils.getDomainType(objectAdapter); String instanceId = OidUtils.getInstanceId(objectAdapter); final String url = "objects/" + domainType + "/" + instanceId; return LinkBuilder.newBuilder(rendererContext, rel.getName(), RepresentationType.DOMAIN_OBJECT, url).withTitle(objectAdapter.titleString(null)); }
public static LinkBuilder newLinkToBuilder(final RendererContext rendererContext, final Rel rel, final ObjectAdapter objectAdapter) { String domainType = OidUtils.getDomainType(objectAdapter); String instanceId = OidUtils.getInstanceId(rendererContext, objectAdapter); final String url = "objects/" + domainType + "/" + instanceId; return LinkBuilder.newBuilder(rendererContext, rel.getName(), RepresentationType.DOMAIN_OBJECT, url).withTitle(objectAdapter.titleString(null)); }
@Override public void visit(final CollectionLayoutData collectionLayoutData) { Link link = new Link( Rel.COLLECTION.getName(), RestfulHttpMethod.GET.getJavaxRsMethod(), getResourceContext().urlFor( "objects/" + domainType + "/" + instanceId + "/collections/" + collectionLayoutData.getId() ), RepresentationType.OBJECT_COLLECTION.getJsonMediaType().toString()); collectionLayoutData.setLink(link); } });
private void addLinkToUp() { final JsonRepresentation link = LinkBuilder.newBuilder(rendererContext, Rel.UP.getName(), RepresentationType.HOME_PAGE, "").build(); final LinkFollowSpecs linkFollower = getLinkFollowSpecs().follow("links"); if (linkFollower.matches(link)) { final HomePageReprRenderer renderer = new HomePageReprRenderer(getRendererContext(), linkFollower, JsonRepresentation.newMap()); link.mapPut("value", renderer.render()); } getLinks().arrayAdd(link); }
private void addLinkToUp() { final JsonRepresentation link = LinkBuilder.newBuilder(rendererContext, Rel.UP.getName(), RepresentationType.HOME_PAGE, "").build(); final LinkFollowSpecs linkFollower = getLinkFollowSpecs().follow("links"); if (linkFollower.matches(link)) { final HomePageReprRenderer renderer = new HomePageReprRenderer(getRendererContext(), linkFollower, JsonRepresentation.newMap()); link.mapPut("value", renderer.render()); } getLinks().arrayAdd(link); }
private void addLinkToUp() { final JsonRepresentation link = LinkBuilder.newBuilder(rendererContext, Rel.UP.getName(), RepresentationType.HOME_PAGE, "").build(); final LinkFollowSpecs linkFollower = getLinkFollowSpecs().follow("links"); if (linkFollower.matches(link)) { final HomePageReprRenderer renderer = new HomePageReprRenderer(getRendererContext(), linkFollower, JsonRepresentation.newMap()); link.mapPut("value", renderer.render()); } getLinks().arrayAdd(link); }
private void addLinkToUp() { final JsonRepresentation link = LinkBuilder.newBuilder(rendererContext, Rel.UP.getName(), RepresentationType.HOME_PAGE, "").build(); final LinkFollowSpecs linkFollower = getLinkFollowSpecs().follow("links"); if (linkFollower.matches(link)) { final HomePageReprRenderer renderer = new HomePageReprRenderer(getRendererContext(), linkFollower, JsonRepresentation.newMap()); link.mapPut("value", renderer.render()); } getLinks().arrayAdd(link); }
private void addLinkToSelf() { final JsonRepresentation link = LinkBuilder.newBuilder(rendererContext, Rel.SELF.getName(), RepresentationType.HOME_PAGE, "").build(); final LinkFollowSpecs linkFollower = getLinkFollowSpecs().follow("links"); if (linkFollower.matches(link)) { final HomePageReprRenderer renderer = new HomePageReprRenderer(getRendererContext(), linkFollower, JsonRepresentation.newMap()); link.mapPut("value", renderer.render()); } getLinks().arrayAdd(link); }
private void addLinkToVersion() { final JsonRepresentation link = LinkBuilder.newBuilder(getRendererContext(), Rel.VERSION.getName(), RepresentationType.VERSION, "version").build(); final LinkFollowSpecs linkFollower = getLinkFollowSpecs().follow("links"); if (linkFollower.matches(link)) { final VersionReprRenderer renderer = new VersionReprRenderer(getRendererContext(), linkFollower, JsonRepresentation.newMap()); link.mapPut("value", renderer.render()); } getLinks().arrayAdd(link); }
private void addLinkToVersion() { final JsonRepresentation link = LinkBuilder.newBuilder(getRendererContext(), Rel.VERSION.getName(), RepresentationType.VERSION, "version").build(); final LinkFollowSpecs linkFollower = getLinkFollowSpecs().follow("links"); if (linkFollower.matches(link)) { final VersionReprRenderer renderer = new VersionReprRenderer(getRendererContext(), linkFollower, JsonRepresentation.newMap()); link.mapPut("value", renderer.render()); } getLinks().arrayAdd(link); }
private void addLinkToDomainTypes(final Collection<ObjectSpecification> specifications) { final JsonRepresentation link = LinkBuilder.newBuilder(getRendererContext(), Rel.DOMAIN_TYPES.getName(), RepresentationType.TYPE_LIST, "domain-types").build(); final LinkFollowSpecs linkFollower = getLinkFollowSpecs().follow("links"); if (linkFollower.matches(link)) { final TypeListReprRenderer renderer = new TypeListReprRenderer(getRendererContext(), linkFollower, JsonRepresentation.newMap()); renderer.withLink(Rel.SELF, "domain-types").with(specifications); link.mapPut("value", renderer.render()); } getLinks().arrayAdd(link); }