public NakedObjectSpecification getSpecification() { return object.getSpecification(); }
public NakedObjectSpecification getSpecification() { return object.getSpecification(); }
private NakedObjectAction dropAction(final NakedObject source, final NakedObject target) { NakedObjectAction action; action = target.getSpecification().getObjectAction(NakedObjectAction.USER, null, new NakedObjectSpecification[] { source.getSpecification() }); return action; }
public int compare(final NakedObject sortedElement) { String sortedType = sortedElement.getSpecification().getShortName(); return sortedType.compareTo(type); }
public int compare(final NakedObject sortedElement) { String sortedType = sortedElement.getSpecification().getShortName(); return sortedType.compareTo(type); }
public void init(final NakedObject element) { type = element.getSpecification().getShortName(); }
/** * Removes the specified object from the system. The specified object's data should be removed from the * persistence mechanism. */ public void destroyObject(final NakedObject object) { LOG.info("destroyObject " + object); object.getSpecification().lifecycleEvent(object, NakedObjectSpecification.DELETING); DestroyObjectCommand command = objectStore.createDestroyObjectCommand(object); getTransaction().addCommand(command); object.getSpecification().lifecycleEvent(object, NakedObjectSpecification.DELETED); }
public void makePersistent(final NakedObject object, final PersistedObjectAdder adders) { if (object.getResolveState().isPersistent() || object.persistable() == Persistable.TRANSIENT) { return; } if (LOG.isInfoEnabled()) { LOG.info("persist " + object); } // NakedObjects.getObjectLoader().madePersistent(object); // Don't do here - allow EventListener to propogate persistent state object.getSpecification().lifecycleEvent(object, NakedObjectSpecification.SAVING); adders.addPersistedObject(object); object.getSpecification().lifecycleEvent(object, NakedObjectSpecification.SAVED); }
private void save(final NakedObject object) throws ObjectPersistenceException { NakedObjectSpecification specification = object.getSpecification(); LOG.debug(" saving object " + object + " as instance of " + specification.getShortName()); MemoryObjectStoreInstances ins = instancesFor(specification); ins.save(object); }
public void execute(final ExecutionContext context) { useExistingHibernateTransaction(); LOG.debug(" save object - actual update " + object); Object toUpdate; if (Features.isAggregated(object.getSpecification())) { final NakedObject parent = object.getSpecification().getAggregate(object); LOG.debug("change to internal collection being persisted through parent"); toUpdate = parent.getObject(); } else { toUpdate = object.getObject(); } HibernateUtil.getCurrentSession().update(toUpdate); }
public Consent canSet(final NakedObject dragSource) { if (dragSource.getSpecification().isOfType(specification)) { return Allow.DEFAULT; } else { return new Veto("Object must be " + specification.getShortName()); } }
private void updateFields(final NakedObject object, Data state) { ObjectData od = (ObjectData) state; NakedObjectField[] fields = object.getSpecification().getFields(); for (int i = 0; i < fields.length; i++) { if (fields[i].isPersisted()) { updateField(object, od, fields[i]); } } }
public Consent isAddValid(NakedObject inObject, NakedObject element) { if (!Features.isService(element.getSpecification())) { return new Veto("Can only add service to this list"); } else { return super.isAddValid(inObject, element); } } }
private void buildNew(final NakedObject object, final View view, final TableAxis viewAxis) { LOG.debug("build view " + view + " for " + object); int len = viewAxis.getColumnCount(); NakedObjectSpecification spec = object.getSpecification(); for (int f = 0; f < len; f++) { NakedObjectField field = fieldFromActualSpec(spec, viewAxis.getFieldForColumn(f)); addField(view, object, field); } }
public Image getIconPicture(int iconHeight) { NakedObject nakedObject = getObject(); NakedObjectSpecification specification = nakedObject.getSpecification(); Image icon = ImageFactory.getInstance().loadIcon(specification, iconHeight, null); return icon; }
public void removeObject(final NakedObject object) { final NakedObject perspective = (NakedObject) getContent().getNaked(); OneToManyAssociation fld = (OneToManyAssociation) perspective.getSpecification().getField("objects"); fld.removeElement(perspective, object); }
public ObjectData[] clearValue(final Session session, final String fieldIdentifier, final IdentityData target) { LOG.debug("request clearValue " + fieldIdentifier + " on " + target + " for " + session); NakedObject inObject = getPersistentNakedObject(session, target); ValueAssociation association = (ValueAssociation) inObject.getSpecification().getField(fieldIdentifier); if (!association.isVisible() || association.isUsable(inObject).isVetoed()) { throw new IllegalRequestException("can't modify field as not visible or editable"); } association.clearValue(inObject); return getUpdates(); }
private NakedObject findService() { Object[] services = NakedObjectsContext.getObjectLoader().getServices(); for (int i = 0; i < services.length; i++) { NakedObject serviceAdapter = NakedObjectsContext.getObjectLoader().getAdapterFor(services[i]); if (serviceAdapter.getSpecification() == getOnType()) { return serviceAdapter; } } throw new NakedObjectRuntimeException("failed to find service for action " + this.getName()); }
public void execute(Workspace workspace, View view, Location at) { ObjectContent parent = (ObjectContent) view.getParent().getContent(); NakedObject perspective = parent.getObject(); OneToManyAssociation fld = (OneToManyAssociation) perspective.getSpecification().getField("services"); ServiceObject service = (ServiceObject) view.getContent(); NakedObject element = service.getObject(); fld.removeElement(perspective, element); super.execute(workspace, view, at); } });
private ObjectData createObjectData(final NakedObject object) { NakedObjectSpecification cls = object.getSpecification(); NakedObjectField[] fields = cls.getFields(); ObjectData data = new ObjectData(object.getOid(), object.getResolveState().name(), cls.getFullName()); for (int i = 0; i < fields.length; i++) { if (fields[i].isPersisted()) { createFieldData(object, data, fields[i]); } } return data; }