Author: michiel Date: 2010-04-13 11:32:29 +0200 (Tue, 13 Apr 2010) New Revision: 41862
Modified: mmbase/trunk/bridge/pom.xml mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/Descriptor.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/Field.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/FieldIterator.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/AbstractQueryHandler.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockBuilderReader.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockCloudContext.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockRelation.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockRelationManager.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockSetup.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockTransaction.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MultilevelQueryHandler.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/NodeQueryHandler.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractCloud.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractCloudContext.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractNode.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/MapNode.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/MapNodeManager.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeFieldComparator.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeMap.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeMapWithoutProcess.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeQueryWrapper.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/Queries.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/TreeList.java mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/VirtualNodeManagerField.java mmbase/trunk/bridge/src/main/java/org/mmbase/datatypes/handlers/package.html mmbase/trunk/bridge/src/main/java/org/mmbase/util/functions/package.html Log: various clean ups Modified: mmbase/trunk/bridge/pom.xml =================================================================== --- mmbase/trunk/bridge/pom.xml 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/pom.xml 2010-04-13 09:32:29 UTC (rev 41862) @@ -33,7 +33,7 @@ <scm> - <url>https://scm.mmbase.org/mmbase/trunk/utils/</url> + <url>https://scm.mmbase.org/mmbase/trunk/bridge/</url> </scm> <build> Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/Descriptor.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/Descriptor.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/Descriptor.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -23,7 +23,7 @@ * Returns the name or 'key' of this object, or <code>null</code> if not applicable. * @return the name as a String */ - public String getName(); + String getName(); // XXX mm @@ -37,7 +37,7 @@ * * @return the GUI name for this object */ - public String getGUIName(); + String getGUIName(); /** * Returns the GUI name for this object in a specified preferred language. @@ -46,26 +46,26 @@ * @return the GUI name for this object * @since MMBase-1.7 */ - public String getGUIName(Locale locale); + String getGUIName(Locale locale); /** * Returns the set of (localized) gui names of this object. * @return the description as a LocalizedString */ - public LocalizedString getLocalizedGUIName(); + LocalizedString getLocalizedGUIName(); /** * Sets the GUI name of this object. * @param locale The locale for which this is valid, or <code>null</code> for the default locale. * @param g the description as a String */ - public void setGUIName(String g, Locale locale); + void setGUIName(String g, Locale locale); /** * Sets the GUI name of this object for the default locale. * @param g the description as a String */ - public void setGUIName(String g); + void setGUIName(String g); // XXX mm: @@ -78,7 +78,7 @@ * Returns the set of (localized) descriptions of this object. * @return the description as a LocalizedString */ - public LocalizedString getLocalizedDescription(); + LocalizedString getLocalizedDescription(); /** * Returns the description of this object. @@ -86,26 +86,26 @@ * If no fitting description for the given locale is available, getName() can be returned. * @return the description as a String */ - public String getDescription(Locale locale); + String getDescription(Locale locale); /** * Returns the description of this object for the default locale. * @return the description as a String */ - public String getDescription(); + String getDescription(); /** * Sets the description of this object. * @param description the description as a String * @param locale The locale for which this is valid, or <code>null</code> for a default locale. */ - public void setDescription(String description, Locale locale); + void setDescription(String description, Locale locale); /** * Sets the description of this object for the default locale. * @param description the description as a String */ - public void setDescription(String description); + void setDescription(String description); } Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/Field.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/Field.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/Field.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -110,7 +110,7 @@ * * @return the node manager this field belongs to */ - public NodeManager getNodeManager(); + NodeManager getNodeManager(); /** * Returns this field's state identifier ({...@link #STATE_VIRTUAL}, {...@link #STATE_PERSISTENT}, {...@link #STATE_SYSTEM} or @@ -118,7 +118,7 @@ * @see #isReadOnly(); * @return an <code>int</code> which identifies the state of this field */ - public int getState(); + int getState(); /** * Returns the data type this field contains. @@ -126,9 +126,9 @@ * @return a <code>DataType</code> object describing the constraints on this field. * @since MMBase-1.8 */ - public DataType getDataType(); + DataType getDataType(); - // public DataType<?> getDataType(); // This opens a can of worms + // DataType<?> getDataType(); // This opens a can of worms @@ -141,7 +141,7 @@ * @return <code>true</code> if the field is part of a unique key * @since MMBase-1.6 */ - public boolean isUnique(); + boolean isUnique(); /** * Returns whether this field is a key field, meaning that the storage layer should define an index for it, allowing @@ -153,7 +153,7 @@ * @return <code>true</code> if the field has a key defined * @since MMBase-1.7 */ - public boolean hasIndex(); + boolean hasIndex(); /** * Returns the identifier for the MMBase base type for this field. @@ -166,7 +166,7 @@ * To acquire the datatype's type, use <code>getDataType.getBaseType()</code> instead. * @return an <code>int</code> which identifies the base type */ - public int getType(); + int getType(); /** * If the type of this field is TYPE_LIST, this method returns the MMBase base type for the list elements. @@ -174,7 +174,7 @@ * For any field types other that TYPE_LIST, this method returns TYPE_UNKNOWN. * @return an <code>int</code> which identifies the base type */ - public int getListItemType(); + int getListItemType(); /** * Retrieve the position of the field when searching. @@ -182,7 +182,7 @@ * @return position of the field when searching * @since MMBase-1.8 */ - public int getSearchPosition(); + int getSearchPosition(); /** * Retrieve the position of the field when listing. @@ -190,7 +190,7 @@ * @return position of the field when listing * @since MMBase-1.8 */ - public int getListPosition(); + int getListPosition(); /** * Retrieve the position of the field when editing. @@ -198,14 +198,14 @@ * @return position of the field when editing * @since MMBase-1.8 */ - public int getEditPosition(); + int getEditPosition(); /** * Retrieve the position of the field in the database table. * @return position in the database table * @since MMBase-1.8 */ - public int getStoragePosition(); + int getStoragePosition(); /** * Returns the GUI name for the data type this field contains. @@ -214,7 +214,7 @@ * @see #getDataType */ @Deprecated - public String getGUIType(); + String getGUIType(); /** * Returns whether this field is required (should have content). @@ -226,7 +226,7 @@ * @return <code>true</code> if the field is required * @since MMBase-1.6 */ - public boolean isRequired(); + boolean isRequired(); /** * Returns the maximum length of data this field can contain. @@ -237,7 +237,7 @@ * * @return the maximum length of data this field can contain */ - public int getMaxLength(); + int getMaxLength(); /** * Checks whether a given value is valid for this field. @@ -245,14 +245,14 @@ * @return Collection of error-strings (describing the problem) in the current locale, or an empty collection if the value is ok. * @since MMBase-1.8 */ - public java.util.Collection<String> validate(Object value); + java.util.Collection<String> validate(Object value); /** * A field's state is 'virtual' if it is not persistent in storage. * @return <code>true</code> when a field is virtual * @since MMBase-1.8 */ - public boolean isVirtual(); + boolean isVirtual(); /** * Returns whether a field is 'read only' - that is, a user cannot edit it. @@ -261,6 +261,6 @@ * @return <code>true</code> when a field is read only * @since MMBase-1.8 */ - public boolean isReadOnly(); + boolean isReadOnly(); } Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/FieldIterator.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/FieldIterator.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/FieldIterator.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -25,12 +25,12 @@ * Returns the next element in the iterator as a Field * @return next Field */ - public Field nextField(); + Field nextField(); /** * Returns the previous element in the iterator as a Field * @return previous Field */ - public Field previousField(); + Field previousField(); } Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/AbstractQueryHandler.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/AbstractQueryHandler.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/AbstractQueryHandler.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -12,7 +12,6 @@ import java.util.*; import org.mmbase.bridge.*; -import org.mmbase.storage.search.*; /** Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockBuilderReader.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockBuilderReader.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockBuilderReader.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -11,7 +11,6 @@ package org.mmbase.bridge.mock; import org.mmbase.util.xml.ParentBuilderReader; -import org.mmbase.bridge.*; import org.mmbase.bridge.util.NodeManagerDescription; import org.xml.sax.InputSource; import org.w3c.dom.Document; Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockCloudContext.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockCloudContext.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockCloudContext.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -15,8 +15,6 @@ import org.mmbase.bridge.util.AbstractCloudContext; import org.mmbase.bridge.util.NodeManagerDescription; import org.mmbase.datatypes.DataType; -import org.mmbase.bridge.implementation.*; -import org.mmbase.storage.search.*; import org.mmbase.security.*; import org.mmbase.util.*; import org.mmbase.util.logging.*; @@ -280,6 +278,7 @@ } } + @Override public Cloud getCloud(String name, org.mmbase.security.UserContext user) throws NotFoundException { if (clouds.contains(name)) { return new MockCloud(name, this, user); @@ -288,6 +287,7 @@ } } + @Override public String getUri() { return "mock:local"; } @@ -318,6 +318,12 @@ public String toString() { return "mock:local"; } + + @Override + public int hashCode() { + int hash = 7; + return hash; + } } Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockRelation.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockRelation.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockRelation.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -12,7 +12,6 @@ import java.util.*; import org.mmbase.bridge.*; -import org.mmbase.bridge.util.*; /** * @author Michiel Meeuwissen @@ -26,23 +25,28 @@ super(new HashMap<String, Object>(map), cloud, nm, isNew); } + @Override public RelationManager getRelationManager() { int role = getIntValue("rnumber"); return new MockRelationManager(cloud, cloud.getCloudContext().getRole(role), "object", "object"); } + @Override public void setSource(Node n) { throw new UnsupportedOperationException(); } + @Override public void setDestination(Node n) { throw new UnsupportedOperationException(); } + @Override public Node getSource() { return getNodeValue("snumber"); } + @Override public Node getDestination() { return getNodeValue("dnumber"); } Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockRelationManager.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockRelationManager.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockRelationManager.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -10,12 +10,8 @@ package org.mmbase.bridge.mock; -import static org.mmbase.datatypes.Constants.*; -import org.mmbase.bridge.util.*; -import org.mmbase.datatypes.DataType; import java.util.*; import org.mmbase.bridge.*; -import org.mmbase.util.functions.*; /** * Straight-forward implementation of NodeManager based on a Map with DataType's. Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockSetup.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockSetup.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockSetup.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -28,10 +28,12 @@ public class MockSetup implements ServletContextListener { + @Override public void contextDestroyed(ServletContextEvent sce) { MockCloudContext.getInstance().clear(); } + @Override public void contextInitialized(ServletContextEvent sce) { try { MockCloudContext.getInstance().addCore(); Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockTransaction.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockTransaction.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MockTransaction.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -10,9 +10,6 @@ package org.mmbase.bridge.mock; import org.mmbase.bridge.*; -import org.mmbase.bridge.util.*; -import org.mmbase.bridge.implementation.*; -import org.mmbase.security.*; import java.util.*; /** @@ -34,24 +31,30 @@ nodes = cloud.createNodeList(); } + @Override public boolean commit() { return true; } + @Override public void cancel() { throw new UnsupportedOperationException(); } + @Override public boolean isCommitted() { return true; } + @Override public boolean isCanceled() { return false; } + @Override public NodeList getNodes() { return nodes; } + @Override public String getCloudName() { return cloud.getName(); } Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MultilevelQueryHandler.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MultilevelQueryHandler.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/MultilevelQueryHandler.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -28,6 +28,7 @@ super(cloud); } + @Override public List<Map<String, Object>> getRecords(Query query) { if (query.getSteps().size() == 1) { if (query.getConstraint() != null) { Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/NodeQueryHandler.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/NodeQueryHandler.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/mock/NodeQueryHandler.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -12,7 +12,6 @@ import java.util.*; import org.mmbase.bridge.*; -import org.mmbase.storage.search.*; /** @@ -29,6 +28,7 @@ } + @Override public List<Map<String, Object>> getRecords(Query query) { assert query instanceof NodeQuery; NodeQuery nq = (NodeQuery) query; Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractCloud.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractCloud.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractCloud.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -42,25 +42,31 @@ } + @Override public abstract Node getNode(int number); + @Override public Node getNode(String number) throws NotFoundException { return getNode(Integer.parseInt(number)); } + @Override public Node getNodeByAlias(String alias) throws NotFoundException { throw new NotFoundException(); } + @Override public Relation getRelation(int number) throws NotFoundException { return (Relation) getNode(number); } + @Override public Relation getRelation(String number) throws NotFoundException { return (Relation) getNode(number); } + @Override public boolean hasNode(int number) { try { return getNode(number) != null; @@ -69,6 +75,7 @@ } } + @Override public boolean hasNode(String number) { try { return hasNode(Integer.parseInt(number)); @@ -76,31 +83,39 @@ return false; } } + @Override public boolean hasRelation(int number) { return hasNode(number) && getNode(number) instanceof Relation; } + @Override public boolean hasRelation(String number) { return hasNode(number) && getNode(number) instanceof Relation; } + @Override public boolean mayRead(int number) { getNode(number); return true; } + @Override public boolean may(org.mmbase.security.Action action, org.mmbase.util.functions.Parameters parameters) { return true; } + @Override public boolean mayRead(String number) { getNode(number); return true; } + @Override public abstract NodeManagerList getNodeManagers(); + @Override public abstract NodeManager getNodeManager(String name); + @Override public boolean hasNodeManager(String name) { try { return getNodeManager(name) != null; @@ -112,6 +127,7 @@ /** * On default we don't associate number id's with node managers */ + @Override public NodeManager getNodeManager(int nodeManagerId) throws NotFoundException { throw new NotFoundException(); } @@ -120,26 +136,32 @@ /** * On default we don't associated number id's with node managers */ + @Override public RelationManager getRelationManager(int relationManagerId) throws NotFoundException { throw new NotFoundException(); } + @Override public RelationManager getRelationManager(String roleName) throws NotFoundException { throw new UnsupportedOperationException(); } + @Override public RelationManager getRelationManager(String sourceManagerName, String destinationManagerName, String roleName) throws NotFoundException { return getRelationManager(getNodeManager(sourceManagerName), getNodeManager(destinationManagerName), roleName); } + @Override public RelationManager getRelationManager(NodeManager sourceManager, NodeManager destinationManager, String roleName) throws NotFoundException { throw new UnsupportedOperationException(); } + @Override public final boolean hasRelationManager(String sourceManagerName, String destinationManagerName, String roleName) { return hasRelationManager(getNodeManager(sourceManagerName), getNodeManager(destinationManagerName), roleName); } + @Override public boolean hasRelationManager(NodeManager sourceManager, NodeManager destinationManager, String roleName) { try { getRelationManager(sourceManager, destinationManager, roleName); @@ -149,6 +171,7 @@ } } + @Override public boolean hasRole(String roleName) { try { getRelationManager(roleName); @@ -158,39 +181,47 @@ } } + @Override public boolean hasRelationManager(String roleName) { return hasRole(roleName); } + @Override public RelationManagerList getRelationManagers() { throw new UnsupportedOperationException(); } + @Override public RelationManagerList getRelationManagers(String sourceManagerName, String destinationManagerName, String roleName) throws NotFoundException { return getRelationManagers(getNodeManager(sourceManagerName), getNodeManager(destinationManagerName), roleName); } + @Override public RelationManagerList getRelationManagers(NodeManager sourceManager, NodeManager destinationManager, String roleName) throws NotFoundException { throw new UnsupportedOperationException(); } + @Override public abstract CloudContext getCloudContext(); + @Override public Transaction createTransaction() { return createTransaction(null, false); } + @Override public Transaction createTransaction(String name) throws AlreadyExistsException { return createTransaction(name, false); } + @Override public Transaction createTransaction(String name, boolean overwrite) throws AlreadyExistsException { if (transactions.containsKey(name)) { throw new AlreadyExistsException("Transaction '" + name + "' already exists"); @@ -205,6 +236,7 @@ } + @Override public Transaction getTransaction(String name) { Transaction tran = transactions.get(name); if (tran == null) { @@ -214,19 +246,23 @@ } + @Override public String getName() { return name; } + @Override public String getDescription() { return getName(); } + @Override public UserContext getUser() { return userContext; } //javadoc inherited + @Override public NodeList getList( String startNodes, String nodePath, @@ -243,84 +279,102 @@ } + @Override public NodeList getList(Query query) { return new SimpleNodeList(BridgeCollections.EMPTY_NODELIST, this); } + @Override public Query createQuery() { return new BasicQuery(this); } + @Override public Query createAggregatedQuery() { throw new UnsupportedOperationException(); } + @Override public NodeQuery createNodeQuery() { return new BasicNodeQuery(this); } + @Override public void setLocale(Locale locale) { this.locale = locale; } + @Override public Locale getLocale() { return locale; } + @Override public Object getProperty(Object key) { return properties.get(key); } + @Override public void setProperty(Object key, Object value) { properties.put(key, value); } + @Override public Map<Object, Object> getProperties() { return properties; } + @Override public Collection<Function<?>> getFunctions(String setName) { return Collections.emptySet(); } + @Override public Function<?> getFunction(String setName, String functionName) { throw new NotFoundException(); } + @Override public NodeList createNodeList() { return new SimpleNodeList(BridgeCollections.EMPTY_NODELIST, this); } + @Override public RelationList createRelationList() { return new BasicRelationList(BridgeCollections.EMPTY_RELATIONLIST, this); } + @Override public NodeManagerList createNodeManagerList() { return new BasicNodeManagerList(BridgeCollections.EMPTY_NODEMANAGERLIST, this); } + @Override public RelationManagerList createRelationManagerList() { return new BasicRelationManagerList(BridgeCollections.EMPTY_RELATIONMANAGERLIST, this); } + @Override public StringList getPossibleContexts() { return new BasicStringList(); } + @Override public Cloud getNonTransactionalCloud() { return this; } + @Override public void shutdown() { } Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractCloudContext.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractCloudContext.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractCloudContext.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -12,13 +12,8 @@ import java.util.*; import org.mmbase.bridge.*; -import org.mmbase.bridge.util.BridgeCollections; -import org.mmbase.datatypes.DataType; import org.mmbase.bridge.implementation.*; -import org.mmbase.storage.search.*; import org.mmbase.security.*; -import org.mmbase.util.*; -import org.xml.sax.InputSource; /** * Abstract implementation of CloudContext which implements a number of methods with reasonable defaults, or based on other methods. Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractNode.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractNode.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/AbstractNode.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -40,34 +40,42 @@ private static final Logger log = Logging.getLoggerInstance(AbstractNode.class); + @Override public boolean isRelation() { return false; } + @Override public Relation toRelation() { throw new ClassCastException("The node " + this + " is not a relation, (but a " + getClass() + ")"); } + @Override public boolean isNodeManager() { return false; } + @Override public NodeManager toNodeManager() { throw new ClassCastException("The node " + this + " is not a node manager , (but a " + getClass() + ")"); } + @Override public boolean isRelationManager() { return false; } + @Override public RelationManager toRelationManager() { throw new ClassCastException("The node " + this + " is not a relation manager , (but a " + getClass() + ")"); } + @Override public boolean isNull(String fieldName) { return getValueWithoutProcess(fieldName) == null; } + @Override public int getNumber() { return Casting.toInt(getValueWithoutProcess("number")); } @@ -77,6 +85,7 @@ * @param fieldName name of the field * @param value set value */ + @Override public final void setValue(String fieldName, Object value) { Field field = getNodeManager().getField(fieldName); if (value == null) { @@ -148,6 +157,7 @@ * method such as setSource(), where applicable. * @since MMBase-1.7 */ + @Override public void setValueWithoutProcess(String fieldName, Object value) { checkWrite(); if ("owner".equals(fieldName)) { @@ -163,29 +173,34 @@ protected abstract void setValueWithoutChecks(String fieldName, Object value); + @Override public final void setObjectValue(String fieldName, Object value) { Field field = getNodeManager().getField(fieldName); value = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_UNKNOWN).process(this, field, value); setValueWithoutProcess(fieldName, value); } + @Override public final void setBooleanValue(String fieldName,final boolean value) { Field field = getNodeManager().getField(fieldName); Object v = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_BOOLEAN).process(this, field, Boolean.valueOf(value)); setValueWithoutProcess(fieldName, v); } + @Override public final void setDateValue(String fieldName, final Date value) { Field field = getNodeManager().getField(fieldName); Object v = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_DATETIME).process(this, field, value); setValueWithoutProcess(fieldName, v); } + @Override public final void setDecimalValue(String fieldName, final BigDecimal value) { Field field = getNodeManager().getField(fieldName); Object v = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_DECIMAL).process(this, field, value); setValueWithoutProcess(fieldName, v); } + @Override public final void setListValue(String fieldName, final List value) { Field field = getNodeManager().getField(fieldName); Object v = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_LIST).process(this, field, value); @@ -207,36 +222,42 @@ } } + @Override public final void setNodeValue(String fieldName, final Node value) { Field field = getNodeManager().getField(fieldName); Object v = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_NODE).process(this, field, value); setValueWithoutProcess(fieldName, toNodeNumber(v)); } + @Override public final void setIntValue(String fieldName, final int value) { Field field = getNodeManager().getField(fieldName); Object v = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_INTEGER).process(this, field, Integer.valueOf(value)); setValueWithoutProcess(fieldName, v); } + @Override public final void setLongValue(String fieldName, final long value) { Field field = getNodeManager().getField(fieldName); Object v = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_LONG).process(this, field, Long.valueOf(value)); setValueWithoutProcess(fieldName, v); } + @Override public final void setFloatValue(String fieldName, final float value) { Field field = getNodeManager().getField(fieldName); Object v = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_FLOAT).process(this, field, Float.valueOf(value)); setValueWithoutProcess(fieldName, v); } + @Override public final void setDoubleValue(String fieldName, final double value) { Field field = getNodeManager().getField(fieldName); Object v = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_DOUBLE).process(this, field, Double.valueOf(value)); setValueWithoutProcess(fieldName, v); } + @Override public final void setByteValue(String fieldName, final byte[] value) { Field field = getNodeManager().getField(fieldName); Object v = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_BINARY).process(this, field, value); @@ -247,6 +268,7 @@ private static final int readLimit = 10 * 1024 * 1024; + @Override public final void setInputStreamValue(String fieldName, final InputStream value, long size) { if (log.isDebugEnabled()) { log.debug("Setting " + size + " + bytes (" + value + ")"); @@ -286,6 +308,7 @@ setValueWithoutProcess(fieldName, v); } + @Override public final void setStringValue(final String fieldName, final String value) { Field field = getNodeManager().getField(fieldName); Object setValue = field.getDataType().preCast(value, this, field); // to resolve enumerations @@ -293,6 +316,7 @@ setValueWithoutProcess(fieldName, v); } + @Override public final void setXMLValue(String fieldName, final Document value) { Field field = getNodeManager().getField(fieldName); Object v = field.getDataType().getProcessor(DataType.PROCESS_SET, Field.TYPE_XML).process(this, field, value); Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/MapNode.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/MapNode.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/MapNode.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -14,7 +14,6 @@ import java.io.*; import org.mmbase.bridge.*; import org.mmbase.util.*; -import org.mmbase.util.functions.*; /** * A bridge Node based on a {...@link java.util.Map}. It can come in handy sometimes to be able to present any {...@link @@ -83,10 +82,12 @@ return new MapNodeManager(cloud, map, implicitCreate); } + @Override public Cloud getCloud() { return nodeManager.getCloud(); } + @Override public NodeManager getNodeManager() { return nodeManager; } @@ -135,6 +136,7 @@ sizes.put(fieldName, size); } + @Override public long getSize(String fieldName) { Long size = sizes.get(fieldName); if (size != null) { Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/MapNodeManager.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/MapNodeManager.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/MapNodeManager.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -10,7 +10,6 @@ package org.mmbase.bridge.util; -import org.mmbase.bridge.Fields; import org.mmbase.bridge.implementation.BasicField; import java.util.*; import org.mmbase.bridge.*; Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeFieldComparator.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeFieldComparator.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeFieldComparator.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -42,6 +42,7 @@ * equal to, or greater than the second. * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object) */ + @Override public int compare(Node n1, Node n2) { int result = 0; Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeMap.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeMap.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeMap.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -35,12 +35,14 @@ } // javadoc inherited + @Override public void clear() { // the fields of a node are fixed by it's nodemanager. throw new UnsupportedOperationException("You cannot remove fields from a Node."); } // javadoc inherited + @Override public boolean containsKey(Object key) { if (key instanceof String) { return getNodeManager().hasField((String) key); @@ -51,6 +53,7 @@ // javadoc inherited // code copied from AbstractMap + @Override public boolean containsValue(Object value) { Iterator<Entry<String, Object>> i = entrySet().iterator(); if (value==null) { @@ -72,6 +75,7 @@ } // javadoc inherited + @Override public Object remove(Object key) { throw new UnsupportedOperationException("You cannot remove fields from a Node."); } @@ -92,70 +96,84 @@ } // javadoc inherited + @Override public Set<Entry<String, Object>> entrySet() { return new AbstractSet<Entry<String, Object>>() { - FieldList fields = getNodeManager().getFields(); - @Override - public Iterator<Entry<String, Object>> iterator() { - return new Iterator<Entry<String, Object>>() { - FieldIterator i = fields.fieldIterator(); - public boolean hasNext() { return i.hasNext();} - public Entry<String, Object> next() { - return new Map.Entry<String, Object>() { - Field field = i.nextField(); - public String getKey() { - return field.getName(); - } - public Object getValue() { - return NodeMap.this.getValueForMap(field.getName()); - } - public Object setValue(Object value) { - Object r = getValue(); - NodeMap.this.setValueForMap(field.getName(), value); - return r; - } - @Override - public String toString() { - return getKey() + "=" + NodeMap.this.getValueWithoutProcess(field.getName()); - } - }; + FieldList fields = getNodeManager().getFields(); + @Override + public Iterator<Entry<String, Object>> iterator() { + return new Iterator<Entry<String, Object>>() { + FieldIterator i = fields.fieldIterator(); + @Override + public boolean hasNext() { + return i.hasNext(); + } + @Override + public Entry<String, Object> next() { + return new Map.Entry<String, Object>() { + Field field = i.nextField(); + @Override + public String getKey() { + return field.getName(); } - public void remove() { - throw new UnsupportedOperationException("You cannot remove fields from a Node."); + @Override + public Object getValue() { + return NodeMap.this.getValueForMap(field.getName()); } + @Override + public Object setValue(Object value) { + Object r = getValue(); + NodeMap.this.setValueForMap(field.getName(), value); + return r; + } + @Override + public String toString() { + return getKey() + "=" + NodeMap.this.getValueWithoutProcess(field.getName()); + } }; - } - @Override - public int size() { - return fields.size(); - } - }; + } + @Override + public void remove() { + throw new UnsupportedOperationException("You cannot remove fields from a Node."); + } + }; + } + @Override + public int size() { + return fields.size(); + } + }; } // javadoc inherited // todo: could be modifiable? public Collection<Object> values() { return new AbstractCollection<Object>() { - FieldList fields = getNodeManager().getFields(); - @Override - public Iterator<Object> iterator() { - return new Iterator<Object>() { - FieldIterator i = fields.fieldIterator(); - public boolean hasNext() { return i.hasNext();} - public Object next() { - Field field = i.nextField(); - return NodeMap.this.getValueForMap(field.getName()); - } - public void remove() { - throw new UnsupportedOperationException("You cannot remove fields from a Node."); - } - }; - } - @Override - public int size() { - return fields.size(); - } - }; + FieldList fields = getNodeManager().getFields(); + @Override + public Iterator<Object> iterator() { + return new Iterator<Object>() { + FieldIterator i = fields.fieldIterator(); + @Override + public boolean hasNext() { + return i.hasNext(); + } + @Override + public Object next() { + Field field = i.nextField(); + return NodeMap.this.getValueForMap(field.getName()); + } + @Override + public void remove() { + throw new UnsupportedOperationException("You cannot remove fields from a Node."); + } + }; + } + @Override + public int size() { + return fields.size(); + } + }; } // javadoc inherited @@ -165,45 +183,55 @@ @Override public Iterator<String> iterator() { return new Iterator<String>() { - FieldIterator i = fields.fieldIterator(); - public boolean hasNext() { return i.hasNext();} - public String next() { - Field field = i.nextField(); - return field.getName(); - } - public void remove() { - throw new UnsupportedOperationException("You cannot remove fields from a Node."); - } - }; - } - @Override - public int size() { - return fields.size(); - } + FieldIterator i = fields.fieldIterator(); + @Override + public boolean hasNext() { + return i.hasNext(); + } + @Override + public String next() { + Field field = i.nextField(); + return field.getName(); + } + @Override + public void remove() { + throw new UnsupportedOperationException("You cannot remove fields from a Node."); + } + }; + } + @Override + public int size() { + return fields.size(); + } }; } // javadoc inherited + @Override public void putAll(Map<? extends String, ? extends Object> map) { for (java.util.Map.Entry<? extends String, ? extends Object> e : map.entrySet()) { put(e.getKey(), e.getValue()); } } + @Override public Object put(String key, Object value) { Object r = getValueForMap(key); setValueForMap(key, value); return r; } + @Override public Object get(Object key) { return getValueForMap((String) key); } + @Override public boolean isEmpty() { return false; } + @Override public int size() { return getNodeManager().getFields().size(); } Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeMapWithoutProcess.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeMapWithoutProcess.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeMapWithoutProcess.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -10,7 +10,6 @@ package org.mmbase.bridge.util; -import java.util.*; import org.mmbase.bridge.*; Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeQueryWrapper.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeQueryWrapper.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/NodeQueryWrapper.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -27,21 +27,26 @@ } + @Override public Step getNodeStep() { return query.getNodeStep(); } + @Override public Step setNodeStep(Step step) { return query.setNodeStep(step); } + @Override public NodeManager getNodeManager() { return query.getNodeManager(); } + @Override public StepField getStepField(Field field) { return query.getStepField(field); } + @Override public java.util.List<StepField> getExtraFields() { return query.getExtraFields(); } Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/Queries.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/Queries.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/Queries.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -1309,6 +1309,7 @@ query = q; } + @Override public int compare(Node node1, Node node2) { return Queries.compare(node1, node2, query.getSortOrders()); } @@ -1336,6 +1337,7 @@ * Compare 2 nodes from a transaction. If it's 'earlier', it's smaller. */ private static class TransactionNodeComparator implements Comparator<Node> { + @Override public int compare(Node node1, Node node2) { int result = node1.getStringValue("_number").compareTo(node2.getStringValue("_number")); if (result != 0) return result; Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/TreeList.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/TreeList.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/TreeList.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -262,6 +262,7 @@ return treeIterator(ind); } + @Override public NodeIterator nodeIterator() { return treeIterator(0); } @@ -668,33 +669,41 @@ return node; } + @Override public boolean hasPrevious() { return nextIndex > 0; } + @Override public Node previousNode() { nextIndex--; throw new UnsupportedOperationException("unfinished"); } + @Override public Node previous() { return previousNode(); } + @Override public int nextIndex() { return nextIndex; } + @Override public int previousIndex() { return nextIndex - 1; } + @Override public void remove() { throw new UnsupportedOperationException("TreeList is not modifiable"); } + @Override public void set(Node o) { throw new UnsupportedOperationException("TreeList is not modifiable"); } + @Override public void add(Node o) { throw new UnsupportedOperationException("TreeList is not modifiable"); } Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/VirtualNodeManagerField.java =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/VirtualNodeManagerField.java 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/bridge/util/VirtualNodeManagerField.java 2010-04-13 09:32:29 UTC (rev 41862) @@ -28,6 +28,7 @@ return Field.STATE_VIRTUAL; } + @Override public int compareTo(Field o) { return name.compareTo(o.getName()); } Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/datatypes/handlers/package.html =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/datatypes/handlers/package.html 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/datatypes/handlers/package.html 2010-04-13 09:32:29 UTC (rev 41862) @@ -14,12 +14,14 @@ </p> <p> Handlers can be defined in the datatype xmls like so: + </p> <pre> <datatype xmlns="http://www.mmbase.org/xmlns/datatypes"> <handler mimetype="text/html,application/xml+xhtml" name="org.mmbase.datatypes.handlers.html.BinaryHandler" /> </pre> + <p> So, you define per list of mime types (in this case the most usual case: HTML and XHTML), the <a href="Handler.html">Handler</a> </p> Modified: mmbase/trunk/bridge/src/main/java/org/mmbase/util/functions/package.html =================================================================== --- mmbase/trunk/bridge/src/main/java/org/mmbase/util/functions/package.html 2010-04-13 08:16:51 UTC (rev 41861) +++ mmbase/trunk/bridge/src/main/java/org/mmbase/util/functions/package.html 2010-04-13 09:32:29 UTC (rev 41862) @@ -28,6 +28,7 @@ </p> <p> A programmer needs to know several things. + </p> <ul> <li> Functions are basically bridge things. So nodes are bridge Nodes. @@ -48,8 +49,7 @@ You can also add functions to a builder in the builder XML. E.g. based on a method in another class, or other FunctionProvider. </li> </ul> - </p> - <!-- version of package description $Id$ --> + <!-- version of package description $Id$ --> @since MMBase-1.7 </body> </html> _______________________________________________ Cvs mailing list [email protected] http://lists.mmbase.org/mailman/listinfo/cvs
