private JsonNode getRelationshipLinks(Object source, Relationship relationship, String ownerLink, SerializationSettings settings) throws IllegalAccessException { if (shouldSerializeLinks(settings)) { Links links = null; Field relationshipLinksField = configuration .getRelationshipLinksField(source.getClass(), relationship.value()); if (relationshipLinksField != null) { links = (Links) relationshipLinksField.get(source); } Map<String, Link> linkMap = new HashMap<>(); if (links != null) { linkMap.putAll(links.getLinks()); } if (!relationship.path().trim().isEmpty() && !linkMap.containsKey(SELF)) { linkMap.put(SELF, new Link(createURL(ownerLink, relationship.path()))); } if (!relationship.relatedPath().trim().isEmpty() && !linkMap.containsKey(RELATED)) { linkMap.put(RELATED, new Link(createURL(ownerLink, relationship.relatedPath()))); } if (!linkMap.isEmpty()) { return objectMapper.valueToTree(new Links(linkMap)).get(LINKS); } } return null; }
private JsonNode getRelationshipLinks(Object source, Relationship relationship, String ownerLink, SerializationSettings settings) throws IllegalAccessException { if (shouldSerializeLinks(settings)) { Links links = null; Field relationshipLinksField = configuration .getRelationshipLinksField(source.getClass(), relationship.value()); if (relationshipLinksField != null) { links = (Links) relationshipLinksField.get(source); } Map<String, Link> linkMap = new HashMap<>(); if (links != null) { linkMap.putAll(links.getLinks()); } if (!relationship.path().trim().isEmpty() && !linkMap.containsKey(SELF)) { linkMap.put(SELF, new Link(createURL(ownerLink, relationship.path()))); } if (!relationship.relatedPath().trim().isEmpty() && !linkMap.containsKey(RELATED)) { linkMap.put(RELATED, new Link(createURL(ownerLink, relationship.relatedPath()))); } if (!linkMap.isEmpty()) { return objectMapper.valueToTree(new Links(linkMap)).get(LINKS); } } return null; }
Field relationshipLinksField = configuration.getRelationshipLinksField(object.getClass(), field); if (relationshipLinksField != null) { Links links = new Links(mapLinks(relationship.get(LINKS)));
Field relationshipLinksField = configuration.getRelationshipLinksField(object.getClass(), field); if (relationshipLinksField != null) { Links links = new Links(mapLinks(relationship.get(LINKS)));
.getRelationshipLinksField(object.getClass(), relationshipName);
.getRelationshipLinksField(object.getClass(), relationshipName);