/** * Returns an existing XDI policy root in this XDI link contract (template), or creates a new one. * * @param create Whether to create an XDI policy root if it does not exist. * @return The existing or newly created XDI policy root. */ public PolicyRoot getPolicyRoot(boolean create) { XdiEntitySingleton xdiEntitySingleton = this.getXdiEntity().getXdiEntitySingleton(XDIPolicyConstants.XDI_ARC_IF, create); if (xdiEntitySingleton == null) return null; return PolicyRoot.fromXdiEntity(xdiEntitySingleton); }
/** * Returns an existing XDI defer push policy root in this XDI link contract (template), or creates * a new one. * * @param create Whether to create an XDI defer push policy root if it does not exist. * @return The existing or newly created XDI defer push policy root. */ public PolicyRoot getDeferPushPolicyRoot(boolean create) { XdiEntitySingleton xdiEntitySingleton = this.getXdiEntity().getXdiEntitySingleton(XDIPolicyConstants.XDI_ADD_DEFER_PUSH, create); if (xdiEntitySingleton == null) return null; xdiEntitySingleton = xdiEntitySingleton.getXdiEntitySingleton(XDIPolicyConstants.XDI_ARC_IF, create); if (xdiEntitySingleton == null) return null; return PolicyRoot.fromXdiEntity(xdiEntitySingleton); }