/** * Converts a DB list into a String array * @param entry Entry input to be converted * @return input entry as String[] */ @SuppressWarnings("unchecked") public static String[] toStringArray(Object entry) { if (entry instanceof String[]) { return (String[]) entry; } else if (entry instanceof OTrackedList) { OTrackedList<String> list = (OTrackedList<String>) entry; return list.toArray(new String[list.size()]); } return new String[0]; }
final ODocument document = entries.next().getRecord();
@Override public Collection<OIdentifiable> values() { convertLinks2Records(); return super.values(); }
@Override public OIdentifiable put(final Object key, OIdentifiable value) { if (status == MULTIVALUE_CONTENT_TYPE.ALL_RIDS && value instanceof ORecord && !value.getIdentity().isNew()) // IT'S BETTER TO LEAVE ALL RIDS AND EXTRACT ONLY THIS ONE value = value.getIdentity(); else status = ORecordMultiValueHelper.updateContentType(status, value); return super.put(key, value); }
public ORecordLazyList copy(final ODocument iSourceRecord) { final ORecordLazyList copy = new ORecordLazyList(iSourceRecord); copy.contentType = contentType; copy.autoConvertToRecord = autoConvertToRecord; final int tot = super.size(); for (int i = 0; i < tot; ++i) copy.add(rawGet(i)); return copy; }
public void fireCollectionChangedEvent(final OMultiValueChangeEvent<OIdentifiable, OIdentifiable> event) { if (getOwner().getInternalStatus() == STATUS.UNMARSHALLING) return; setDirty(); if (changeListeners != null) { for (final OMultiValueChangeListener<OIdentifiable, OIdentifiable> changeListener : changeListeners) { if (changeListener != null) changeListener.onAfterRecordChanged(event); } } }
public void convertLinks2Records() { if (status == MULTIVALUE_CONTENT_TYPE.ALL_RECORDS || !autoConvertToRecord || getOwner().getInternalStatus() == STATUS.MARSHALLING) // PRECONDITIONS return; for (Object k : keySet()) convertLink2Record(k); status = MULTIVALUE_CONTENT_TYPE.ALL_RECORDS; }
@Override public OIdentifiable get(final int index) { lazyLoad(false); if (autoConvertToRecord) convertLink2Record(index); return super.get(index); }
private void addNested(T element) { if (element instanceof OTrackedMultiValue) { ((OTrackedMultiValue) element) .addChangeListener(new ONestedValueChangeListener((ODocument) sourceRecord, this, (OTrackedMultiValue) element)); } }
@Override public ListIterator<OIdentifiable> listIterator() { lazyLoad(false); return super.listIterator(); }
@Override public int lastIndexOf(final Object o) { lazyLoad(false); return super.lastIndexOf(o); }
public void fireCollectionChangedEvent(final OMultiValueChangeEvent<T, T> event) { if (status == STATUS.UNMARSHALLING) return; setDirty(); if (changeListeners != null) { for (final OMultiValueChangeListener<T, T> changeListener : changeListeners) { if (changeListener != null) changeListener.onAfterRecordChanged(event); } } }
public void fireCollectionChangedEvent(final OMultiValueChangeEvent<Object, T> event) { if (status == STATUS.UNMARSHALLING) return; setDirty(); if (changeListeners != null) { for (final OMultiValueChangeListener<Object, T> changeListener : changeListeners) { if (changeListener != null) changeListener.onAfterRecordChanged(event); } } }
@Override public Object[] toArray() { convertLinks2Records(); return super.toArray(); }
private void addNested(T element) { if (element instanceof OTrackedMultiValue) { ((OTrackedMultiValue) element) .addChangeListener(new ONestedValueChangeListener((ODocument) sourceRecord, this, (OTrackedMultiValue) element)); } }