private Link getLinkForFeedItem() { if (link != null) { return link; } if (media != null) { Link result = new Link(); result.setUrl(media.getUrl()); return result; } return null; } }
@Override public Object convert(String toConvert, TypeInformation targetType, SemanticField semanticField, ModelBuilderPipeline pipeline, DefaultSemanticFieldDataProvider dataProvider) throws FieldConverterException { Class<?> objectType = targetType.getObjectType(); Object result; if (Date.class.isAssignableFrom(objectType)) { try { result = DateFormat.getInstance().parse(toConvert); } catch (ParseException e) { throw new FieldConverterException("Cannot parse a date string " + toConvert + " to a date of class Date"); } } else if (DateTime.class == objectType) { result = DateTime.parse(toConvert); } else if (Number.class.isAssignableFrom(objectType)) { result = toSpecificNumber(new BigDecimal(toConvert), objectType); } else if (Boolean.class == objectType) { result = Boolean.parseBoolean(toConvert); } else if (String.class == objectType) { result = toConvert; } else if (Link.class.isAssignableFrom(objectType)) { Link link = new Link(); link.setUrl(toConvert); result = link; } else if (RichText.class.isAssignableFrom(objectType)) { result = new RichText(toConvert); } else { throw new FieldConverterException("The type " + objectType + " is not supported by String Converter"); } return convertToCollectionIfNeeded(result, targetType); }
result = toConvert; } else if (Link.class.isAssignableFrom(objectType)) { Link link = new Link(); link.setUrl(toConvert); result = link;
private static Link linkForItem(SitemapItem item) { Link link = new Link(); link.setUrl(item.getUrl()); link.setLinkText(item.getTitle()); return link; }
public Object selfLink(Object toLink, TypeDescriptor targetType, ModelBuilderPipeline pipeline) throws DxaException { Class<?> objectType = getClassForSelfLinking(toLink, targetType); String itemId = toLink instanceof EntityModelData ? ((EntityModelData) toLink).getId() : ((PageModelData) toLink).getId(); String url = resolveLink(itemId, webRequestContext, linkResolver); if (objectType == String.class) { return url; } else if (Link.class.isAssignableFrom(objectType)) { Link link = new Link(); link.setUrl(url); return link; } else if (toLink instanceof EntityModelData && EntityModel.class.isAssignableFrom(objectType)) { //type safety is guaranteed by if condition //noinspection unchecked return pipeline.createEntityModel((EntityModelData) toLink, (Class<EntityModel>) objectType); } throw new UnsupportedTargetTypeException(objectType); }
public Object selfLink(Object toLink, TypeDescriptor targetType, ModelBuilderPipeline pipeline) throws DxaException { Class<?> objectType = getClassForSelfLinking(toLink, targetType); String itemId = toLink instanceof EntityModelData ? ((EntityModelData) toLink).getId() : ((PageModelData) toLink).getId(); String url = resolveLink(itemId, webRequestContext, linkResolver); if (objectType == String.class) { return url; } else if (Link.class.isAssignableFrom(objectType)) { Link link = new Link(); link.setUrl(url); return link; } else if (toLink instanceof EntityModelData && EntityModel.class.isAssignableFrom(objectType)) { //type safety is guaranteed by if condition //noinspection unchecked return pipeline.createEntityModel((EntityModelData) toLink, (Class<EntityModel>) objectType); } throw new UnsupportedTargetTypeException(objectType); }
@Override public List<FeedItem> extractFeedItems() { Link link = new Link(); link.setUrl(getUrl()); return Lists.newArrayList(FeedItem.builder() .headline(getFileName()) .summary(new RichText(description)) .link(link) .build()); } }
@Override public Object convert(EntityModelData toConvert, TypeInformation targetType, SemanticField semanticField, ModelBuilderPipeline pipeline, DefaultSemanticFieldDataProvider dataProvider) throws FieldConverterException { Class<?> objectType = targetType.getObjectType(); Object result; if (String.class.isAssignableFrom(objectType)) { result = toConvert.getLinkUrl(); } else if (Link.class.isAssignableFrom(objectType)) { Link link = new Link(); link.setId(toConvert.getId()); link.setUrl(toConvert.getLinkUrl()); result = link; } else { try { if (EntityModel.class.isAssignableFrom(objectType)) { result = pipeline.createEntityModel(toConvert, objectType.asSubclass(EntityModel.class)); } else { throw new FieldConverterException("Object type " + objectType + " is not supported by EntityModelDataConverter"); } } catch (DxaException e) { throw new FieldConverterException("Cannot convert a entity model " + toConvert.getId() + " to " + objectType + " for semantic field " + semanticField.getName(), e); } } return convertToCollectionIfNeeded(result, targetType); }
@Override public Object convert(EntityModelData toConvert, TypeInformation targetType, SemanticField semanticField, ModelBuilderPipeline pipeline, DefaultSemanticFieldDataProvider dataProvider) throws FieldConverterException { Class<?> objectType = targetType.getObjectType(); Object result; if (String.class.isAssignableFrom(objectType)) { result = toConvert.getLinkUrl(); } else if (Link.class.isAssignableFrom(objectType)) { Link link = new Link(); link.setId(toConvert.getId()); link.setUrl(toConvert.getLinkUrl()); result = link; } else { try { if (EntityModel.class.isAssignableFrom(objectType)) { result = pipeline.createEntityModel(toConvert, objectType.asSubclass(EntityModel.class)); } else { throw new FieldConverterException("Object type " + objectType + " is not supported by EntityModelDataConverter"); } } catch (DxaException e) { throw new FieldConverterException("Cannot convert a entity model " + toConvert.getId() + " to " + objectType + " for semantic field " + semanticField.getName(), e); } } return wrapIfNeeded(result, targetType); } }