Changeset 28444
- Timestamp:
- 01/02/08 19:53:47 (1 year ago)
- Files:
-
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-archive-facade/src/main/java/org/nuxeo/ecm/platform/archive/service/NXArchiveFactoryService.java (modified) (1 diff)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-audit-facade/src/main/java/org/nuxeo/ecm/platform/audit/ejb/NXAuditMessageListener.java (modified) (1 diff)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-content-template-manager/src/main/java/org/nuxeo/ecm/platform/content/template/factories/BaseContentFactory.java (modified) (1 diff)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-directory-api/src/main/java/org/nuxeo/ecm/directory/impl/DirectoryClientImpl.java (modified) (1 diff)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-directory-multi/src/test/java/org/nuxeo/ecm/directory/multi/TestMemoryDirectory.java (modified) (2 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-domsync-core/src/main/java/org/nuxeo/ecm/platform/domsync/core/DOMSynchronizer.java (modified) (8 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-events-api/src/main/java/org/nuxeo/ecm/platform/events/api/delegate/DocumentMessageProducerBusinessDelegate.java (modified) (3 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-notification-facade/src/main/java/org/nuxeo/ecm/platform/ec/notification/ejb/NotificationMessageListener.java (modified) (3 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-relations-jena-plugin/src/main/java/org/nuxeo/ecm/platform/relations/jena/JenaGraph.java (modified) (2 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-api/src/main/java/org/nuxeo/ecm/core/search/api/client/indexing/nxcore/IndexingHelper.java (modified) (9 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-api/src/main/java/org/nuxeo/ecm/core/search/api/client/indexing/resources/AbstractIndexableResource.java (modified) (2 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-compass-plugin/src/main/java/org/nuxeo/ecm/core/search/backend/compass/join/QuerySplitter.java (modified) (2 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-compass-plugin/src/test/java/org/nuxeo/ecm/core/search/backend/compass/IntrospectableCompassBackend.java (modified) (1 diff)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-compass-plugin/src/test/java/org/nuxeo/ecm/core/search/backend/compass/TestCompassBackendInternals.java (modified) (2 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-core-listener/src/test/java/org/nuxeo/ecm/core/search/api/security/SearchPolicyServiceImpl.java (modified) (2 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-ui-web/src/main/java/org/nuxeo/ecm/platform/ui/web/directory/ChainSelect.java (modified) (2 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-ui-web/src/main/java/org/nuxeo/ecm/platform/ui/web/util/ComponentTagUtils.java (modified) (1 diff)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-usermanager-api/src/test/java/org/nuxeo/ecm/platform/usermanager/TestNuxeoPrincipalImpl.java (modified) (1 diff)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-webapp-core/src/main/java/org/nuxeo/ecm/webapp/action/DeleteActionsBean.java (modified) (11 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-webapp-core/src/main/java/org/nuxeo/ecm/webapp/clipboard/ClipboardActionsBean.java (modified) (3 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-webapp-core/src/main/java/org/nuxeo/ecm/webapp/security/SecurityActionsBean.java (modified) (2 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-workflow-client/src/main/java/org/nuxeo/ecm/platform/workflow/web/listener/ejb/DocumentTaskActionsBean.java (modified) (7 diffs)
- org.nuxeo.ecm.platform/trunk/nuxeo-platform-workflow-core/src/test/java/org/nuxeo/ecm/platform/workflow/FakeWorkflowEngine.java (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
org.nuxeo.ecm.platform/trunk/nuxeo-platform-archive-facade/src/main/java/org/nuxeo/ecm/platform/archive/service/NXArchiveFactoryService.java
r20218 r28444 70 70 } 71 71 72 @SuppressWarnings("static-access")73 72 public Class<ArchiveRecordFactory> getArchiveRecordFactoryKlass() { 74 return this.archiveRecordFactoryKlass;73 return archiveRecordFactoryKlass; 75 74 } 76 75 org.nuxeo.ecm.platform/trunk/nuxeo-platform-audit-facade/src/main/java/org/nuxeo/ecm/platform/audit/ejb/NXAuditMessageListener.java
r25118 r28444 127 127 NXAuditEvents service = NXAudit.getNXAuditEventsService(); 128 128 Set<String> eventIds = service.getAuditableEventNames(); 129 if (eventIds.contains(eventId)) { 130 return true; 131 } 132 return false; 129 return eventIds.contains(eventId); 133 130 } 134 131 org.nuxeo.ecm.platform/trunk/nuxeo-platform-content-template-manager/src/main/java/org/nuxeo/ecm/platform/content/template/factories/BaseContentFactory.java
r23426 r28444 16 16 protected CoreSession session; 17 17 18 protected Boolean initSession(DocumentModel eventDoc) 19 { 18 protected Boolean initSession(DocumentModel eventDoc) { 20 19 String sessionId = eventDoc.getSessionId(); 21 20 session = CoreInstance.getInstance().getSession(sessionId); 22 if (session==null) 23 return false; 24 return true; 21 return session != null; 25 22 } 26 23 27 public void createContentStructure(DocumentModel eventDoc) throws ClientException { 24 public void createContentStructure(DocumentModel eventDoc) 25 throws ClientException { 28 26 throw new NotImplementedException(); 29 27 } 30 28 31 public Boolean initFactory(Map<String, String> options, List<TemplateItemDescriptor> template) { 29 public Boolean initFactory(Map<String, String> options, 30 List<TemplateItemDescriptor> template) { 32 31 throw new NotImplementedException(); 33 32 } org.nuxeo.ecm.platform/trunk/nuxeo-platform-directory-api/src/main/java/org/nuxeo/ecm/directory/impl/DirectoryClientImpl.java
r25638 r28444 39 39 public class DirectoryClientImpl implements DirectoryClient { 40 40 41 /**42 *43 */44 41 private static final long serialVersionUID = -1170479958816244690L; 45 42 46 private long sessionId;43 private final long sessionId; 47 44 48 45 private transient DirectoryManager manager; org.nuxeo.ecm.platform/trunk/nuxeo-platform-directory-multi/src/test/java/org/nuxeo/ecm/directory/multi/TestMemoryDirectory.java
r26508 r28444 298 298 } 299 299 300 protected List<String> entryIds(List<DocumentModel> entries) {300 protected static List<String> entryIds(List<DocumentModel> entries) { 301 301 List<String> ids = new ArrayList<String>(entries.size()); 302 302 for (DocumentModel entry : entries) { … … 315 315 dir.createEntry(e2); 316 316 317 Map<String, Object> filter = Collections. <String, Object>emptyMap();318 Set<String> fulltext = Collections. <String>emptySet();317 Map<String, Object> filter = Collections.emptyMap(); 318 Set<String> fulltext = Collections.emptySet(); 319 319 Map<String, String> orderBy = new LinkedHashMap<String, String>(); 320 320 DocumentModelList entries; org.nuxeo.ecm.platform/trunk/nuxeo-platform-domsync-core/src/main/java/org/nuxeo/ecm/platform/domsync/core/DOMSynchronizer.java
r28225 r28444 61 61 private DOMMutationEvent currentEvent; /* for debug/test purposes */ 62 62 private List<IDOMMutationListener> listeners = new ArrayList<IDOMMutationListener>(); 63 63 64 64 public DOMSynchronizer(Document document, IDOMSupport domSupport) { 65 65 this.document = document; 66 66 this.domSupport = domSupport; 67 67 } 68 68 69 69 /** 70 70 * Document event handler … … 76 76 MutationEvent event = (MutationEvent) evt; 77 77 String type = event.getType(); 78 78 79 79 if (DOM_CHARACTER_DATA_MODIFIED.equals(type)) { 80 80 Node target = (Node) event.getTarget(); 81 81 String newValue = event.getNewValue(); 82 dispatchEvent(new DOMCharacterDataModifiedEvent(DOMUtil.computeNodeXPath(document, target), newValue)); 83 82 dispatchEvent(new DOMCharacterDataModifiedEvent( 83 DOMUtil.computeNodeXPath(document, target), newValue)); 84 84 85 } else if (DOM_NODE_INSERTED.equals(type)) { 85 86 Node target = event.getRelatedNode(); 86 87 Node insertedNode = (Node)event.getTarget(); 87 88 int position = DOMUtil.getNodePosition(insertedNode); 88 ArrayList<DOMNodeInsertedEvent> list = new ArrayList<DOMNodeInsertedEvent>(); 89 buildFragmentInsertedEvents(DOMUtil.computeNodeXPath(document, target), insertedNode, position, list); 90 for(Iterator<DOMNodeInsertedEvent> i = list.iterator(); i.hasNext(); ) { 91 dispatchEvent(i.next()); 92 } 93 89 List<DOMNodeInsertedEvent> list = new ArrayList<DOMNodeInsertedEvent>(); 90 buildFragmentInsertedEvents(DOMUtil.computeNodeXPath(document, target), 91 insertedNode, position, list); 92 for (DOMNodeInsertedEvent aList : list) { 93 dispatchEvent(aList); 94 } 95 94 96 } else if (DOM_NODE_REMOVED.equals(type)) { 95 97 Node target = (Node) event.getTarget(); 96 dispatchEvent(new DOMNodeRemovedEvent(DOMUtil.computeNodeXPath(document, target))); 97 98 dispatchEvent(new DOMNodeRemovedEvent( 99 DOMUtil.computeNodeXPath(document, target))); 100 98 101 } else if (DOM_ATTR_MODIFIED.equals(type)) { 99 102 Node target = (Node) event.getTarget(); 100 dispatchEvent(new DOMAttrModifiedEvent(DOMUtil.computeNodeXPath(document, target), event.getAttrName(), event.getAttrChange(), event.getNewValue())); 101 103 dispatchEvent(new DOMAttrModifiedEvent( 104 DOMUtil.computeNodeXPath(document, target), event.getAttrName(), event.getAttrChange(), event.getNewValue())); 105 102 106 } else { 103 107 System.err.println("!Unsupported event type "+type); 104 108 } 105 109 } 106 110 107 111 private void buildFragmentInsertedEvents(String baseXPath, Node node, int position, List<DOMNodeInsertedEvent> list) { 108 112 if (node instanceof Text) { 109 list.add(new DOMNodeInsertedEvent(baseXPath, "#text"+((Text)node).getData(), position)); 113 list.add(new DOMNodeInsertedEvent(baseXPath, 114 "#text" + ((Text) node).getData(), position)); 110 115 } else if (node instanceof Element) { 111 list.add(new DOMNodeInsertedEvent(baseXPath, DOMUtil.getElementOuterNoChildren((Element) node), position)); 112 if(node.hasChildNodes()) { 113 baseXPath = baseXPath + DOMUtil.computeNodeXPath(node.getParentNode(),node); 116 list.add(new DOMNodeInsertedEvent(baseXPath, 117 DOMUtil.getElementOuterNoChildren((Element) node), position)); 118 if (node.hasChildNodes()) { 119 baseXPath += DOMUtil.computeNodeXPath(node.getParentNode(), node); 114 120 node = node.getFirstChild(); 115 121 position = 0; 116 while(node != null) { 117 buildFragmentInsertedEvents(baseXPath, node, position, list); 122 while (node != null) { 123 buildFragmentInsertedEvents(baseXPath, node, position, 124 list); 118 125 node = node.getNextSibling(); 119 126 ++position; … … 125 132 } 126 133 } 127 134 128 135 private void dispatchEvent(DOMMutationEvent event) { 129 136 if(dispatchLevel != 0) { … … 136 143 } 137 144 IDOMMutationListener[] list = listeners.toArray(new IDOMMutationListener[listeners.size()]); 138 for (int i = 0; i < list.length; ++i) {139 list [i].handleEvent(event);140 } 141 } 142 145 for (IDOMMutationListener listener : list) { 146 listener.handleEvent(event); 147 } 148 } 149 143 150 public void addMutationListener(IDOMMutationListener listener) { 144 151 if (!listeners.contains(listener)) { … … 158 165 ++dispatchLevel; 159 166 try { 160 Node target = DOMUtil.findNodeByXPath(document, event.getTarget()); 167 Node target = DOMUtil.findNodeByXPath(document, event.getTarget()); 161 168 if (target == null) { 162 169 System.err.println("!Null target for "+event.getTarget()); 163 170 return; 164 171 } 165 172 166 173 if (event instanceof DOMNodeInsertedEvent) { 167 174 if(!(target instanceof Element) && !(target instanceof Document) ) { … … 183 190 target.appendChild(docFragment); 184 191 } 185 192 186 193 } else if (event instanceof DOMNodeRemovedEvent) { 187 194 if(!(target instanceof Element) && !(target instanceof CharacterData) && !(target instanceof ProcessingInstruction)) { 188 195 System.err.println("!Unsupported target node type"); 189 return; 196 return; 190 197 } 191 198 target.getParentNode().removeChild(target); 192 199 193 200 } else if (event instanceof DOMAttrModifiedEvent) { 194 201 if(!(target instanceof Element)) { 195 202 System.err.println("!Unsupported target node type"); 196 return; 203 return; 197 204 } 198 205 String attrName = ((DOMAttrModifiedEvent)event).getAttrName(); … … 212 219 } 213 220 } 214 221 215 222 } else if (event instanceof DOMCharacterDataModifiedEvent) { 216 223 String data = ((DOMCharacterDataModifiedEvent)event).getNewValue(); … … 218 225 ((CharacterData)target).setData(data); 219 226 } else if (target instanceof ProcessingInstruction) { 220 ((ProcessingInstruction)target).setData(data); 221 } else { 222 System.err.println("!Unsupported target node type"); 223 } 224 227 ((ProcessingInstruction)target).setData(data); 228 } else { 229 System.err.println("!Unsupported target node type"); 230 } 231 225 232 } else { 226 233 System.err.println("!Unsupported event "+event); org.nuxeo.ecm.platform/trunk/nuxeo-platform-events-api/src/main/java/org/nuxeo/ecm/platform/events/api/delegate/DocumentMessageProducerBusinessDelegate.java
r22664 r28444 28 28 /** 29 29 * Document message producer service delegate. 30 * 30 * 31 31 * <p> 32 32 * Utility class giving access to the <code>DocumentMessageProducer</code> 33 33 * service. 34 34 * </p> 35 * 35 * 36 36 * @author <a href="mailto:ja@nuxeo.com">Julien Anguenot</a> 37 * 37 * 38 38 */ 39 39 public final class DocumentMessageProducerBusinessDelegate implements … … 47 47 /** 48 48 * Returns the remote document message producer service. 49 * 49 * 50 50 * @return a <code>DocumentMessageProducer</code> service instance. 51 51 * @throws DocumentMessageProducerException if an error occured at lookup 52 52 * time. 53 53 */ 54 public static finalDocumentMessageProducer getRemoteDocumentMessageProducer()54 public static DocumentMessageProducer getRemoteDocumentMessageProducer() 55 55 throws DocumentMessageProducerException { 56 56 DocumentMessageProducer producer = null; … … 65 65 /** 66 66 * Returns a local document message producer service. 67 * 67 * 68 68 * @return a <code>DocumentMessageProducer</code> service instance. 69 69 */ org.nuxeo.ecm.platform/trunk/nuxeo-platform-notification-facade/src/main/java/org/nuxeo/ecm/platform/ec/notification/ejb/NotificationMessageListener.java
r26373 r28444 333 333 334 334 } 335 336 335 } 337 336 … … 340 339 deletionEvents.add("aboutToRemove"); 341 340 deletionEvents.add("documentRemoved"); 342 if (deletionEvents.contains(message.getEventId())){ 343 return true; 344 } 345 return false; 341 return deletionEvents.contains(message.getEventId()); 346 342 } 347 343 … … 408 404 throw new ClientException("Failed to send notification email ", e); 409 405 } 410 411 406 } 412 407 org.nuxeo.ecm.platform/trunk/nuxeo-platform-relations-jena-plugin/src/main/java/org/nuxeo/ecm/platform/relations/jena/JenaGraph.java
r28267 r28444 274 274 connection.getDriver().setDoCompressURI(true); 275 275 } 276 if (databaseTransactionEnabled || false) {276 if (databaseTransactionEnabled) { 277 277 connection.getDriver().setIsTransactionDb(true); 278 278 } … … 282 282 graph = m.createModel(name); 283 283 } 284 graph.setNsPrefixes( this.namespaces);284 graph.setNsPrefixes(namespaces); 285 285 // use baseConnection so that it is closed instead of the jena one 286 286 // (to let the pool handled closure). org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-api/src/main/java/org/nuxeo/ecm/core/search/api/client/indexing/nxcore/IndexingHelper.java
r26092 r28444 47 47 /** 48 48 * This class provides helpers for (re)(un)indexing processes 49 * 49 * 50 50 * @author <a href="mailto:gracinet@nuxeo.com">Georges Racinet</a> 51 * 51 * 52 52 */ 53 53 public final class IndexingHelper { … … 73 73 /** 74 74 * Delete one document from the document indexes. 75 * 75 * 76 76 * @param docModel : the actual document model to unindex. 77 77 * @param service : the search service. … … 146 146 systemSession.login(); 147 147 return systemSession; 148 } else { 149 log.debug("Bound to an IndexingThead. No need reauthenticate...."); 150 } 148 } 149 log.debug("Bound to an IndexingThead. No need reauthenticate...."); 151 150 return null; 152 151 } catch (Exception e) { … … 167 166 * index a newly created document as part as the same transaction that 168 167 * created the document. 169 * 168 * 170 169 * @param docModel 171 170 * @param managedSessionId … … 187 186 * Start a recursive indexing process using a new CoreSession instance that 188 187 * will automatically be closed at the end og the indexing process. 189 * 188 * 190 189 * @param docModel 191 190 * @throws Exception … … 288 287 289 288 while (true) { 290 291 289 for (ResultItem item : rset) { 292 290 String key = (String) item.get(BuiltinDocumentFields.FIELD_DOC_UUID); … … 300 298 } 301 299 302 if (rset.hasNextPage()) 300 if (rset.hasNextPage()) { 303 301 try { 304 302 rset = rset.nextPage(); … … 306 304 throw new IndexingException(se); 307 305 } 308 else {306 } else { 309 307 break; 310 308 } 311 312 } 313 309 } 314 310 } 315 311 … … 334 330 335 331 private static boolean isBoundToIndexingThread() { 336 if (Thread.currentThread() instanceof IndexingThread) { 337 return true; 338 } 339 return false; 332 return Thread.currentThread() instanceof IndexingThread; 340 333 } 341 334 org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-api/src/main/java/org/nuxeo/ecm/core/search/api/client/indexing/resources/AbstractIndexableResource.java
r22566 r28444 40 40 private static final Log log = LogFactory.getLog(AbstractIndexableResource.class); 41 41 42 private static final long serialVersionUID = 7457965764411626518L; 43 42 44 protected String name; 43 45 … … 67 69 protected boolean isBoundToIndexingThread() { 68 70 if (boundToIndexingThread == null) { 69 if (Thread.currentThread() instanceof IndexingThread) { 70 boundToIndexingThread = true; 71 } else { 72 boundToIndexingThread = false; 73 } 71 boundToIndexingThread = Thread.currentThread() instanceof IndexingThread; 74 72 } 75 73 return boundToIndexingThread; org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-compass-plugin/src/main/java/org/nuxeo/ecm/core/search/backend/compass/join/QuerySplitter.java
r22551 r28444 93 93 } 94 94 95 public boolean isJoin(Predicate p) {96 return (p.lvalue instanceof Reference)97 && (p.rvalue instanceof Reference);95 public static boolean isJoin(Predicate p) { 96 return p.lvalue instanceof Reference 97 && p.rvalue instanceof Reference; 98 98 } 99 99 … … 116 116 117 117 // single out main query and put join info. 118 List<SubQuery> joinedSubQueries = null;118 List<SubQuery> joinedSubQueries; 119 119 joinedSubQueries = new ArrayList<SubQuery>(subQueries.size()-1); 120 120 org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-compass-plugin/src/test/java/org/nuxeo/ecm/core/search/backend/compass/IntrospectableCompassBackend.java
r21701 r28444 55 55 } 56 56 57 public Resource buildResource(CompassSession session, 58 ResolvedResource resource) 59 throws IndexingException { 57 public static Resource buildResource(CompassSession session, 58 ResolvedResource resource) throws IndexingException { 60 59 return buildResource(session, resource, null, null, null, null); 61 60 } 62 61 63 62 @SuppressWarnings("unchecked") 64 public Resource buildResource(CompassSession session,63 public static Resource buildResource(CompassSession session, 65 64 ResolvedResource resource, 66 65 List<ResolvedData> commonData, 67 66 String joinIdName, String joinIdValue, ACP acp) 68 67 throws IndexingException { 69 return super.buildResource(session, null, resource, commonData, joinIdName,70 joinId Value, acp);68 return CompassBackend.buildResource(session, null, resource, commonData, 69 joinIdName, joinIdValue, acp); 71 70 } 72 71 org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-compass-plugin/src/test/java/org/nuxeo/ecm/core/search/backend/compass/TestCompassBackendInternals.java
r27078 r28444 458 458 ResolvedResource iResource = SharedTestDataBuilder 459 459 .aboutLifeIndexableBookSchemaResource(); 460 Resource r = backend.buildResource(session, iResource,460 Resource r = IntrospectableCompassBackend.buildResource(session, iResource, 461 461 SharedTestDataBuilder.aboutLifeCommon(), 462 462 null, null, null); … … 483 483 .aboutLifeIndexableBookSchemaResource(); 484 484 485 Resource r = backend.buildResource(session, null, iResource,485 Resource r = IntrospectableCompassBackend.buildResource(session, null, iResource, 486 486 SharedTestDataBuilder.aboutLifeCommon(), 487 487 "join_id", org.nuxeo.ecm.platform/trunk/nuxeo-platform-search-core-listener/src/test/java/org/nuxeo/ecm/core/search/api/security/SearchPolicyServiceImpl.java
r24488 r28444 34 34 public class SearchPolicyServiceImpl implements SearchPolicyService { 35 35 36 private static final Log log = LogFactory 37 .getLog(SearchPolicyServiceImpl.class); 36 private static final Log log = LogFactory.getLog(SearchPolicyServiceImpl.class); 38 37 39 38 public ComposedNXQuery applyPolicy(ComposedNXQuery nxqlQuery) { … … 44 43 Operator.LTEQ, new IntegerLiteral((Long) principal.getModel() 45 44 .getProperty("user", "accessLevel"))); 46 if ( query.getWhereClause().toString().indexOf(add.toString()) < 0) {45 if (!query.getWhereClause().toString().contains(add.toString())) { 47 46 WhereClause wc; 48 47 if (query.getWhereClause() != null) { org.nuxeo.ecm.platform/trunk/nuxeo-platform-ui-web/src/main/java/org/nuxeo/ecm/platform/ui/web/directory/ChainSelect.java
r26037 r28444 375 375 */ 376 376 public void rebuildOptions() { 377 /* 377 378 for (int i = 0; i < size; i++) { 378 379 if (optionList[i] != null) { … … 383 384 } 384 385 } 386 */ 385 387 } 386 388 387 389 private void rebuildOptions(int index) { 388 389 390 ChainSelectListboxComponent component = getComponent(index); 390 391 org.nuxeo.ecm.platform/trunk/nuxeo-platform-ui-web/src/main/java/org/nuxeo/ecm/platform/ui/web/util/ComponentTagUtils.java
r19474 r28444 41 41 public static boolean isValueReference(String value) { 42 42 if (value == null) { 43 throw new NullPointerException();43 throw new IllegalArgumentException(); 44 44 } 45 if (value.contains("#{") 46 && (value.indexOf("#{") < value.indexOf('}'))) { 47 return true; 48 } 49 return false; 45 return value.contains("#{") 46 && value.indexOf("#{") < value.indexOf('}'); 50 47 } 51 48 org.nuxeo.ecm.platform/trunk/nuxeo-platform-usermanager-api/src/test/java/org/nuxeo/ecm/platform/usermanager/TestNuxeoPrincipalImpl.java
r26508 r28444 50 50 NuxeoPrincipalImpl a = new NuxeoPrincipalImpl("foo"); 51 51 NuxeoPrincipalImpl b = new NuxeoPrincipalImpl("foo"); 52 assertTrue(a.hashCode() != 0);53 52 assertEquals(a.hashCode(), b.hashCode()); 54 53 // we don't assert that hash codes are different for principals with org.nuxeo.ecm.platform/trunk/nuxeo-platform-webapp-core/src/main/java/org/nuxeo/ecm/webapp/action/DeleteActionsBean.java
r27893 r28444 267 267 return checkDeletePermOnParents(docsToDelete); 268 268 } 269 269 270 270 public boolean getCanDeleteSections() throws ClientException { 271 271 List<DocumentModel> docsToDelete = documentsListsManager 272 272 .getWorkingList(DocumentsListsManager.CURRENT_DOCUMENT_SECTION_SELECTION); 273 273 274 274 if (docsToDelete == null || docsToDelete.isEmpty()) { 275 275 return false; 276 276 } 277 277 278 278 // do simple filtering 279 279 return checkDeletePermOnParents(docsToDelete); … … 356 356 if (docToDelete.isLocked()) { 357 357 String locker = lockActions.getLockDetails(docToDelete) 358 .get( lockActions.LOCKER);358 .get(LockActions.LOCKER); 359 359 if (currentUser.getName().equals(locker)) { 360 360 docsThatCanBeDeleted.add(docToDelete); … … 393 393 .getWorkingList(DocumentsListsManager.CURRENT_DOCUMENT_SELECTION)); 394 394 } else { 395 log 396 .debug("No documents selection in context to process delete on..."); 395 log.debug("No documents selection in context to process delete on..."); 397 396 return null; 398 397 } 399 398 } 400 399 401 400 public String deleteSelectionSections() throws ClientException { 402 401 if (!documentsListsManager … … 405 404 .getWorkingList(DocumentsListsManager.CURRENT_DOCUMENT_SECTION_SELECTION)); 406 405 } else { 407 log 408 .debug("No sections selection in context to process delete on..."); 406 log.debug("No sections selection in context to process delete on..."); 409 407 return null; 410 408 } … … 471 469 472 470 // Notify parents 473 DocumentModel parent;474 471 for (DocumentRef parentRef : parentsRefs) { 475 parent = documentManager.getDocument(parentRef);472 DocumentModel parent = documentManager.getDocument(parentRef); 476 473 if (parent != null) { 477 474 Events.instance().raiseEvent( … … 554 551 .getWorkingList(DocumentsListsManager.CURRENT_DOCUMENT_TRASH_SELECTION)); 555 552 } else { 556 log 557 .debug("No documents selection in context to process delete on..."); 553 log.debug("No documents selection in context to process delete on..."); 558 554 return null; 559 555 } … … 639 635 640 636 return computeOutcome(DELETE_OUTCOME); 641 642 637 } 643 638 … … 695 690 } 696 691 } 697 698 692 } 699 693 … … 753 747 data); 754 748 } 755 756 749 } 757 750 … … 779 772 SortInfo sortInfo) throws ClientException, 780 773 ResultsProviderFarmUserException { 781 Object[] params = null;774 Object[] params; 782 775 PagedDocumentsProvider provider = null; 783 776 … … 890 883 891 884 public boolean getCanRestoreCurrentDoc() throws ClientException{ 892 if ("deleted".equals(navigationContext.getCurrentDocument().getCurrentLifeCycleState())){ 893 return true; 894 } 895 return false; 885 return "deleted".equals( 886 navigationContext.getCurrentDocument().getCurrentLifeCycleState()); 896 887 } 897 888 org.nuxeo.ecm.platform/trunk/nuxeo-platform-webapp-core/src/main/java/org/nuxeo/ecm/webapp/clipboard/ClipboardActionsBean.java
r27152 r28444 801 801 802 802 public void setCurrentSelectedList(String listId) { 803 if ( (listId != null) && (!listId.equals(currentSelectedList))) {803 if (listId != null && !listId.equals(currentSelectedList)) { 804 804 currentSelectedList = listId; 805 805 canEditSelectedDocs = null; … … 892 892 public boolean getCanEditSelectedDocs() throws ClientException { 893 893 if (canEditSelectedDocs == null) { 894 if (!getCurrentSelectedList().isEmpty()) { 894 if (getCurrentSelectedList().isEmpty()) { 895 canEditSelectedDocs = false; 896 } else { 895 897 final List<DocumentModel> selectedDocs = getCurrentSelectedList(); 896 898 897 899 // check selected docs 898 900 canEditSelectedDocs = checkWritePerm(selectedDocs); 899 } else {900 canEditSelectedDocs = false;901 901 } 902 902 } … … 908 908 909 909 final boolean canEdit; 910 if (!docs.isEmpty()) { 910 if (docs.isEmpty()) { 911 canEdit = false; 912 } else { 911 913 // check selected docs 912 914 canEdit = checkWritePerm(docs); 913 } else {914 canEdit = false;915 915 }
