private ObjectData[] convertToNakedCollection(final NakedObject instances) { final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(instances); final ObjectData[] data = new ObjectData[facet.size(instances)]; final Enumeration elements = facet.elements(instances); int i = 0; while (elements.hasMoreElements()) { final NakedObject element = (NakedObject) elements.nextElement(); data[i++] = encoderDecoder.encodeCompletePersistentGraph(element); } return data; }
public static Object[] getCollectionAsObjectArray(final Object option, final NakedObjectSpecification spec, AdapterManager adapterManager) { final NakedObject collection = adapterManager.adapterFor(option); final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection); final Object[] optionArray = new Object[facet.size(collection)]; int j = 0; for(NakedObject adapter: facet.iterable(collection)) { optionArray[j++] = adapter.getObject(); } return optionArray; }
public static NakedObject firstElement(final NakedObject collection) { final CollectionFacet facet = getCollectionFacetFromSpec(collection); return facet.firstElement(collection); }
private void updateOneToManyAssociation( final NakedObject object, final OneToManyAssociation field, final CollectionData collectionData) { final NakedObject collection = field.get(object); final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection); final Vector original = new Vector(); final Enumeration elements = facet.elements(collection); while (elements.hasMoreElements()) { original.addElement(elements.nextElement()); } for (int j = 0; j < collectionData.elements.length; j++) { final NakedObject element = recreateReference(collectionData.elements[j]); if (!facet.contains(collection, element)) { LOG.debug(" association " + field + " changed, added " + element.getOid()); field.addElement(object, element); } else { field.removeElement(object, element); } } final int size = original.size(); for (int i = 0; i < size; i++) { final NakedObject element = (NakedObject) original.elementAt(i); LOG.debug(" association " + field + " changed, removed " + element.getOid()); field.removeElement(object, element); } }
private boolean hasInstancesFromCache( final NakedObjectSpecification specification) { final NakedObject collection = (NakedObject) cache.get(specification); final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection); if (facet == null) { return false; } return facet.size(collection) > 0; }
public void execute() { NakedObject result; result = action.execute(target, null); if (result != null) { final CollectionFacet facet = result.getSpecification().getFacet(CollectionFacet.class); if (facet != null) { if (facet.size(result) == 1) { result = facet.firstElement(result); } } view.objectActionResult(result, at); } view.getViewManager().disposeUnneededViews(); view.getFeedbackManager().showMessagesAndWarnings(); }
public CollectionResponse(final NakedObject collection) { oid = collection.getOid(); final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection); final Enumeration elements = facet.elements(collection); int count = 0; while (elements.hasMoreElements()) { final NakedObject obj = (NakedObject) elements.nextElement(); this.elements[count] = obj.getOid(); count++; } }
public static List<NakedObject> convertToAdapterList(final NakedObject collection) { final CollectionFacet facet = getCollectionFacetFromSpec(collection); final List<NakedObject> adapters = new ArrayList<NakedObject>(); for(NakedObject adapter: facet.iterable(collection)) { adapters.add(adapter); } return adapters; }
private Data createCollectionData(final NakedObject object) { final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(object); final Data[] collData = new Data[facet.size(object)]; final Iterator elements = facet.iterator(object); int i = 0; while (elements.hasNext()) { final NakedObject ref = (NakedObject) elements.next(); collData[i++] = new Data(ref.getOid(), ref.getResolveState().name(), ref.getSpecification().getFullName()); } //String elementType = facet.getTypeOfFacet().valueSpec().getFullName(); String elementType = object.getSpecification().getFullName(); return new CollectionData(object.getOid(), object.getResolveState(), elementType , collData); }
private void populateCollection(NakedObject collection, CollectionData state, ResolveState targetState) { NakedObject[] initData = new NakedObject[state.elements.length]; int i = 0; for (Data elementData : state.elements) { initData[i++] = recreateReference(elementData); } CollectionFacet facet = collection.getSpecification().getFacet(CollectionFacet.class); facet.init(collection, initData); }
private String debugCollectionGraph(final NakedObject collection, final int level, final Vector recursiveElements) { final StringBuffer s = new StringBuffer(); if (recursiveElements.contains(collection)) { s.append("*\n"); } else { recursiveElements.addElement(collection); final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection); final Iterator<NakedObject> e = facet.iterator(collection); while (e.hasNext()) { indent(s, level); NakedObject element; try { element = e.next(); } catch (final ClassCastException ex) { LOG.error(ex); return s.toString(); } s.append(element); s.append(debugGraph(element, level + 1, recursiveElements)); } } return s.toString(); }
@Override public void checkInstances(final Context context, final NakedObject[] objects) { final NakedObject collection = field.get(getTarget(context)); final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection); final NakedObject target = getTarget(context); for (int i = 0; i < objects.length; i++) { final Consent valueValid = field.isValidToAdd(target, objects[i]); if (valueValid.isVetoed()) { objects[i] = null; } else if (facet.contains(collection, objects[i])) { objects[i] = null; } } }
private boolean hasInstancesFromCache( final NakedObjectSpecification specification) { final NakedObject collection = (NakedObject) cache.get(specification); final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection); if (facet == null) { return false; } return facet.size(collection) > 0; }
public void execute() { ActionContent actionContent = ((ActionContent) view.getContent()); NakedObject result = actionContent.execute(); LOG.debug("action invoked with result " + result); if (result != null) { Location dialogLocation = view.getAbsoluteLocation(); move(dialogLocation); CollectionFacet facet = result.getSpecification().getFacet(CollectionFacet.class); if (facet != null) { if (facet.size(result) == 1) { result = facet.firstElement(result); } } View newView = workspace.addWindowFor(result, dialogLocation); view.getViewManager().setKeyboardFocus(newView); } view.getViewManager().disposeUnneededViews(); view.getFeedbackManager().showMessagesAndWarnings(); }
private void makeCollectionPersistent(final NakedObject collection, final ToPersistObjectSet toPersistObjectSet) { LOG.info("persist " + collection); if (collection.getResolveState() == ResolveState.TRANSIENT) { collection.changeState(ResolveState.RESOLVED); } final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection); final Enumeration elements = facet.elements(collection); while (elements.hasMoreElements()) { makePersistent((NakedObject) elements.nextElement(), toPersistObjectSet); } }
public static List<NakedObject> convertToAdapterList(final NakedObject collection) { final CollectionFacet facet = getCollectionFacetFromSpec(collection); final List<NakedObject> adapters = new ArrayList<NakedObject>(); for(NakedObject adapter: facet.iterable(collection)) { adapters.add(adapter); } return adapters; }
facet.init(collection, initData); return collection;
private Data createMadePersistentCollection(final CollectionData collectionData, final NakedObject collection) { final ReferenceData[] elementData = collectionData.getElements(); final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection); final Iterator elements = facet.iterator(collection); for (int i = 0; i < elementData.length; i++) { final NakedObject element = (NakedObject) elements.next(); final Oid oid = element.getOid(); Assert.assertNotNull(oid); elementData[i] = encodeMadePersistentGraph((ObjectData) elementData[i], element); } return collectionData; }
@Override public void checkInstances(final Context context, final NakedObject[] objects) { final NakedObject collection = field.get(getTarget(context)); final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection); final NakedObject target = getTarget(context); for (int i = 0; i < objects.length; i++) { final Consent valueValid = field.isValidToAdd(target, objects[i]); if (valueValid.isVetoed()) { objects[i] = null; } else if (facet.contains(collection, objects[i])) { objects[i] = null; } } }
private ObjectData[] convertToNakedCollection(final NakedObject instances) { final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(instances); final ObjectData[] data = new ObjectData[facet.size(instances)]; final Enumeration elements = facet.elements(instances); int i = 0; while (elements.hasMoreElements()) { final NakedObject element = (NakedObject) elements.nextElement(); data[i++] = encoderDecoder.encodeCompletePersistentGraph(element); } return data; }