private boolean isPersistent(final NakedReference object) { return object.getResolveState().isPersistent(); }
public void start(final NakedReference object, final ResolveState targetState) { if ( !object.getResolveState().isValidToChangeTo(targetState)) { throw new TestProxyException("Not valid to change from " + object.getResolveState() + " to " + targetState); } ((TestProxyNakedObject) object).setupResolveState(targetState); }
public void resolveField(final NakedObject object, final NakedObjectField field) { if (field.isValue()) { return; } NakedReference reference = (NakedReference) field.get(object); if (reference == null || reference.getResolveState().isResolved()) { return; } if (!reference.getResolveState().isPersistent()) { return; } if (LOG.isInfoEnabled()) { // don't log object - it's toString() may use the unresolved field or unresolved collection LOG.info("resolve field " + object.getSpecification().getShortName() + "." + field.getId() + ": " + reference.getSpecification().getShortName() + " " + reference.getResolveState().code() + " " + reference.getOid()); } objectStore.resolveField(object, field); }
public void resolveField(final NakedObject object, final NakedObjectField field) { if (field.isValue()) { return; } NakedReference reference = (NakedReference) field.get(object); if (reference != null && reference.getResolveState().isResolved()) { return; } if (reference == null || !reference.getResolveState().isPersistent()) { return; } LOG.info("resolve-eagerly on server " + object + "/" + field.getId()); Data data = connection.resolveField(NakedObjectsContext.getSession(), encoder.createIdentityData(object), field.getId()); encoder.restore(data); }
public void end(final NakedReference object) { ResolveState finalState = object.getResolveState().getEndState(); ((DummyNakedObject) object).setupResolveState(finalState); }
public void end(final NakedReference object) { ResolveState finalState = object.getResolveState().getEndState(); ((TestProxyNakedObject) object).setupResolveState(finalState); }
private boolean isToBeExecutedRemotely(final NakedReference target) { boolean remoteOverride = getTarget() == NakedObjectAction.REMOTE; boolean localOverride = getTarget() == NakedObjectAction.LOCAL; if (localOverride) { return false; } if (remoteOverride) { return true; } if (Features.isService(target.getSpecification())) { return true; } if (target == null) { // for static methods there is no target return false; } boolean remoteAsPersistent = target.getResolveState().isPersistent(); return remoteAsPersistent; }
public void viewMenuOptions(final UserActionSet options) { super.viewMenuOptions(options); TreeDisplayRules.menuOptions(options); options.add(new AbstractUserAction("Select node") { public void execute(final Workspace workspace, final View view, final Location at) { selectNode(); } public String getDescription(final View view) { return "Show this node in the right-hand pane"; } }); Naked object = getView().getContent().getNaked(); ResolveState resolveState = ((NakedReference) object).getResolveState(); if (object instanceof NakedReference && (resolveState.isGhost() || resolveState.isPartlyResolved())) { options.add(new AbstractUserAction("Load object") { public void execute(final Workspace workspace, final View view, final Location at) { resolveContent(); } }); } }