@Override public PageObjectPropertyReference replaceParent(EntityReference oldParent, EntityReference newParent) { if (newParent == oldParent) { return this; } return new PageObjectPropertyReference(this, oldParent, newParent); }
@Override public PageObjectPropertyReference replaceParent(EntityReference newParent) { if (newParent == getParent()) { return this; } return new PageObjectPropertyReference(this, newParent); } }
@Override public PageObjectPropertyReference resolve(String propertyReferenceRepresentation, Object... parameters) { return new PageObjectPropertyReference(this.entityReferenceResolver.resolve(propertyReferenceRepresentation, EntityType.PAGE_OBJECT_PROPERTY, parameters)); } }
/** * @param stringRepresentation an object property reference specified as {@link String} (using the * "wiki:space/page/object/property" format and with special characters escaped where required) * @param hint the hint of the resolver to use in case any part of the reference is missing (no wiki specified, no * space or no page) * @param parameters extra parameters to pass to the resolver; you can use these parameters to resolve an object * property reference relative to another entity reference * @return the corresponding typed {@link ObjectPropertyReference} object * @since 10.6RC1 */ @Unstable public PageObjectPropertyReference resolvePageObjectProperty(String stringRepresentation, String hint, Object... parameters) { try { EntityReferenceResolver<String> resolver = this.componentManager.getInstance(EntityReferenceResolver.TYPE_STRING, hint); return new PageObjectPropertyReference( resolver.resolve(stringRepresentation, EntityType.PAGE_OBJECT_PROPERTY, parameters)); } catch (ComponentLookupException e) { return null; } }