/** * @since 2.2M1 */ public int getXObjectSize(DocumentReference classReference) { try { return getXObjects().get(classReference).size(); } catch (Exception e) { return 0; } }
/** * @since 2.2M1 */ public List<BaseObject> getXObjects(DocumentReference classReference) { if (classReference == null) { return new ArrayList<BaseObject>(); } return getXObjects().get(classReference); }
/** * @since 2.2M1 */ public BaseObject getXObject(DocumentReference classReference, int nb) { try { return getXObjects().get(classReference).get(nb); } catch (Exception e) { return null; } }
@Override public void onEvent(Event event, Object source, Object data) { XWikiDocument document = (XWikiDocument) source; List<BaseObject> skinObjects = document.getXObjects(SKIN_CLASS); if (skinObjects != null && !skinObjects.isEmpty()) { clearCacheFromSkin(document); return; } }
/** * {@inheritDoc} * * @see com.xpn.xwiki.doc.XWikiDocument#getXObjects() */ @Override public Map<DocumentReference, List<BaseObject>> getXObjects() { return getDocument().getXObjects(); }
/** * @deprecated since 2.2M1 use {@link #getXObjects(DocumentReference)} instead */ @Deprecated public Vector<BaseObject> getObjects(String className) { List<BaseObject> result = getXObjects(resolveClassReference(className)); return result == null ? null : new Vector<BaseObject>(result); }
/** * Add to the string builder the value of title,category,content and extract of XWiki.ArticleClass */ private void getObjectContentAsText(StringBuilder sb, XWikiDocument doc, XWikiContext context) { for (List<BaseObject> objects : doc.getXObjects().values()) { for (BaseObject obj : objects) { extractObjectContent(sb, obj, context); } } }
/** * @since 2.2M1 */ public void setXObjects(DocumentReference classReference, List<BaseObject> objects) { if (objects.isEmpty()) { getXObjects().put(classReference, objects); } else { for (BaseObject baseObject : objects) { addXObject(classReference, baseObject); } } }
@Override public void onEvent(Event event, Object source, Object data) { XWikiDocument document = (XWikiDocument) source; List<BaseObject> colorThemeObjects = document.getXObjects(COLOR_THEME_CLASS); if (colorThemeObjects != null && !colorThemeObjects.isEmpty()) { clearCache(document); return; } List<BaseObject> skinObjects = document.getXObjects(SKIN_CLASS); if (skinObjects != null && !skinObjects.isEmpty()) { clearCache(document); } }
private List<NotificationFilterPreference> convertXObjectsToPreferences(XWikiDocument document, DocumentReference notificationFilterPreferenceClass) { List<NotificationFilterPreference> preferencesToConvert = new ArrayList<>(); List<BaseObject> preferencesObj = document.getXObjects(notificationFilterPreferenceClass); if (preferencesObj != null) { for (BaseObject obj : preferencesObj) { if (obj != null) { handleObject(preferencesToConvert, obj); } } } return preferencesToConvert; }
public Map<String, Vector<Object>> getxWikiObjects() { Map<DocumentReference, List<BaseObject>> map = this.getDoc().getXObjects(); Map<String, Vector<Object>> resultmap = new HashMap<String, Vector<Object>>(); for (Map.Entry<DocumentReference, List<BaseObject>> entry : map.entrySet()) { List<BaseObject> objects = entry.getValue(); if (objects != null) { resultmap.put(this.localEntityReferenceSerializer.serialize(entry.getKey()), getXObjects(objects)); } } return resultmap; }
/** * @since 2.2M1 * @deprecated use {@link #addXObject(BaseObject)} instead */ @Deprecated public void addXObject(DocumentReference classReference, BaseObject object) { List<BaseObject> vobj = getXObjects(classReference); if (vobj == null) { setXObject(classReference, 0, object); } else { setXObject(classReference, vobj.size(), object); } }
private DefaultWikiDescriptor buildDescriptorFromDocument(XWikiDocument document) { DefaultWikiDescriptor descriptor = null; List<BaseObject> serverClassObjects = document.getXObjects(DefaultWikiDescriptor.SERVER_CLASS); if (serverClassObjects != null && !serverClassObjects.isEmpty()) { descriptor = this.wikiDescriptorBuilderProvider.get().buildDescriptorObject(serverClassObjects, document); // Add to the cache if (descriptor != null) { cache.add(descriptor); } } return descriptor; } }
/** * @param source an xwiki document, that has just been updated. * @return true if and only if the xwiki document corresponds to a group. */ private boolean isGroupDocument(Object source) { XWikiDocument doc = (XWikiDocument) source; DocumentReference docRef = doc.getDocumentReference(); DocumentReference groupClass = resolver.resolve(XWikiConstants.GROUP_CLASS, docRef); List<BaseObject> objects = doc.getXObjects(groupClass); return objects != null && objects.size() > 0; }
private void registerObjectComponents(XWikiDocument document) { for (Map.Entry<DocumentReference, List<BaseObject>> entry : document.getXObjects().entrySet()) { WikiObjectComponentBuilder componentBuilder = getAssociatedComponentBuilder(entry.getKey()); if (componentBuilder != null) { for (BaseObject baseObject : entry.getValue()) { if (baseObject != null) { this.wikiObjectComponentManagerEventListenerProxy .registerObjectComponents(baseObject.getReference(), baseObject, componentBuilder); } } } } }
private void unRegisterObjectComponents(XWikiDocument document) { for (Map.Entry<DocumentReference, List<BaseObject>> entry : document.getXObjects().entrySet()) { WikiObjectComponentBuilder componentBuilder = getAssociatedComponentBuilder(entry.getKey()); if (componentBuilder != null) { for (BaseObject baseObject : entry.getValue()) { if (baseObject != null) { this.wikiObjectComponentManagerEventListenerProxy .unregisterObjectComponents(baseObject.getReference()); } } } } }
protected List<BaseObject> getBaseObjects(Document doc) throws XWikiException { List<BaseObject> objectList = new ArrayList<BaseObject>(); XWikiDocument xwikiDocument = Utils.getXWiki(componentManager).getDocument(doc.getPrefixedFullName(), Utils.getXWikiContext(componentManager)); Map<DocumentReference, List<BaseObject>> classToObjectsMap = xwikiDocument.getXObjects(); for (DocumentReference classReference : classToObjectsMap.keySet()) { List<BaseObject> xwikiObjects = classToObjectsMap.get(classReference); for (BaseObject object : xwikiObjects) { objectList.add(object); } } return objectList; }
protected List<BaseObject> getBaseObjects(Document doc, String className) throws XWikiException { List<BaseObject> objectList = new ArrayList<BaseObject>(); XWikiDocument xwikiDocument = Utils.getXWiki(componentManager).getDocument(doc.getPrefixedFullName(), Utils.getXWikiContext(componentManager)); Map<DocumentReference, List<BaseObject>> classToObjectsMap = xwikiDocument.getXObjects(); List<BaseObject> xwikiObjects = classToObjectsMap.get(this.currentMixedDocumentReferenceResolver.resolve(className)); for (BaseObject object : xwikiObjects) { objectList.add(object); } return objectList; } }
public Vector<Object> getObjects(String className) { List<BaseObject> objects = this.getDoc().getXObjects(this.doc.resolveClassReference(className)); return getXObjects(objects); }
private void removeExistingDescriptor(XWikiDocument document) { List<BaseObject> existingServerClassObjects = document.getXObjects(SERVER_CLASS); if (existingServerClassObjects != null && !existingServerClassObjects.isEmpty()) { String wikiId = this.wikiDescriptorDocumentHelper.getWikiIdFromDocumentReference(document.getDocumentReference()); DefaultWikiDescriptor existingDescriptor = this.cache.getFromId(wikiId); if (existingDescriptor != null) { this.cache.remove(wikiId, existingDescriptor.getAliases()); this.cache.setWikiIds(null); } } } }