org.mmbase.bridge.implementation
Class VirtualNodeManager

java.lang.Object
  extended by org.mmbase.bridge.util.AbstractNode
      extended by org.mmbase.bridge.util.AbstractNodeManager
          extended by org.mmbase.bridge.implementation.VirtualNodeManager
All Implemented Interfaces:
Comparable<Node>, Node, NodeManager

public class VirtualNodeManager
extends AbstractNodeManager
implements NodeManager

This class represents a virtual node type information object. It has the same functionality as BasicNodeType, but it's nodes are vitrtual - that is, constructed based on the results of a search over multiple node managers. As such, it is not possible to search on this node type, nor to create new nodes. It's sole function is to provide a type definition for the results of a search.

Version:
$Id: VirtualNodeManager.java 41843 2010-04-12 15:04:13Z michiel $
Author:
Rob Vermeulen, Pierre van Rooden

Field Summary
(package private)  MMObjectBuilder builder
           
protected  Map<String,Field> fieldTypes
           
 
Fields inherited from class org.mmbase.bridge.util.AbstractNodeManager
cloud, values
 
Fields inherited from interface org.mmbase.bridge.NodeManager
GUI_PLURAL, GUI_SINGULAR, ORDER_CREATE, ORDER_EDIT, ORDER_LIST, ORDER_NONE, ORDER_SEARCH
 
Fields inherited from interface org.mmbase.bridge.Node
CLOUD_COMMITNODE_KEY
 
Constructor Summary
VirtualNodeManager(Query query, Cloud cloud)
           
VirtualNodeManager(VirtualNode node, Cloud cloud)
          Instantiated a Virtual NodeManager, and tries its best to find reasonable values for the field-types.
 
Method Summary
 String getDescription()
          Returns the description of this node manager.
 String getDescription(Locale locale)
          Returns the description of this node manager in a specified language.
protected  Map<String,Field> getFieldTypes()
          Returns the fieldlist of this nodemanager after making sure the manager is synced with the builder.
static Map<String,Field> getFieldTypes(SearchQuery query, NodeManager nm)
           
 String getGUIName(int plurality, Locale locale)
          Returns the descriptive name of this node manager ina a specified language.
 String getName()
          Returns the name of this node manager.
 
Methods inherited from class org.mmbase.bridge.util.AbstractNodeManager
createFieldList, createNode, createNodeList, createQuery, createRelationList, edit, getAllowedRelations, getAllowedRelations, getAllowedRelations, getCloud, getDescendants, getField, getFields, getFields, getFunctions, getGUIName, getGUIName, getInfo, getInfo, getList, getList, getList, getList, getNodeManager, getParent, getProperties, getProperty, getSize, getValueWithoutProcess, hasField, isNodeManager, mayCreateNode, setNodeManager, setSize, setValueWithoutChecks, toNodeManager, toString
 
Methods inherited from class org.mmbase.bridge.util.AbstractNode
cancel, checkWrite, commit, compareTo, countRelatedNodes, countRelatedNodes, countRelations, countRelations, createAlias, createFunctionValue, createParameters, createRelation, delete, delete, deleteAlias, deleteRelations, deleteRelations, equals, getAliases, getBooleanValue, getByteValue, getChanged, getContext, getDateValue, getDecimalValue, getDoubleValue, getFieldValue, getFieldValue, getFloatValue, getFunction, getFunctionMap, getFunctionValue, getInputStreamValue, getIntValue, getListValue, getLongValue, getNodeFunction, getNodeValue, getNumber, getObjectValue, getPossibleContexts, getRelatedNodes, getRelatedNodes, getRelatedNodes, getRelatedNodes, getRelatedNodes, getRelations, getRelations, getRelations, getRelations, getRelations, getStringValue, getValue, getXMLValue, getXMLValue, hashCode, hasRelations, isChanged, isChanged, isNew, isNull, isRelation, isRelationManager, mayChangeContext, mayDelete, mayWrite, processNull, setBooleanValue, setByteValue, setContext, setDateValue, setDecimalValue, setDoubleValue, setFloatValue, setInputStreamValue, setIntValue, setListValue, setLongValue, setNodeValue, setObjectValue, setStringValue, setValue, setValueWithoutProcess, setXMLValue, toNodeNumber, toRelation, toRelationManager, validate
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.mmbase.bridge.NodeManager
createFieldList, createNode, createNodeList, createQuery, createRelationList, getAllowedRelations, getAllowedRelations, getAllowedRelations, getCloud, getDescendants, getField, getFields, getFields, getGUIName, getGUIName, getInfo, getInfo, getList, getList, getList, getList, getParent, getProperties, getProperty, hasField, mayCreateNode
 
Methods inherited from interface org.mmbase.bridge.Node
cancel, commit, countRelatedNodes, countRelatedNodes, countRelations, countRelations, createAlias, createParameters, createRelation, delete, delete, deleteAlias, deleteRelations, deleteRelations, getAliases, getBooleanValue, getByteValue, getChanged, getContext, getDateValue, getDecimalValue, getDoubleValue, getFieldValue, getFieldValue, getFloatValue, getFunction, getFunctions, getFunctionValue, getInputStreamValue, getIntValue, getListValue, getLongValue, getNodeManager, getNodeValue, getNumber, getObjectValue, getPossibleContexts, getRelatedNodes, getRelatedNodes, getRelatedNodes, getRelatedNodes, getRelatedNodes, getRelations, getRelations, getRelations, getRelations, getRelations, getSize, getStringValue, getValue, getValueWithoutProcess, getXMLValue, getXMLValue, hasRelations, isChanged, isChanged, isNew, isNodeManager, isNull, isRelation, isRelationManager, mayChangeContext, mayDelete, mayWrite, setBooleanValue, setByteValue, setContext, setDateValue, setDecimalValue, setDoubleValue, setFloatValue, setInputStreamValue, setIntValue, setListValue, setLongValue, setNodeManager, setNodeValue, setObjectValue, setStringValue, setValue, setValueWithoutProcess, setXMLValue, toNodeManager, toRelation, toRelationManager, toString, validate
 
Methods inherited from interface java.lang.Comparable
compareTo
 

Field Detail

fieldTypes

protected final Map<String,Field> fieldTypes

builder

final MMObjectBuilder builder
Constructor Detail

VirtualNodeManager

VirtualNodeManager(VirtualNode node,
                   Cloud cloud)
Instantiated a Virtual NodeManager, and tries its best to find reasonable values for the field-types.


VirtualNodeManager

VirtualNodeManager(Query query,
                   Cloud cloud)
Since:
MMBase-1.8
Method Detail

getFieldTypes

protected Map<String,Field> getFieldTypes()
Returns the fieldlist of this nodemanager after making sure the manager is synced with the builder.

Specified by:
getFieldTypes in class AbstractNodeManager
Since:
MMBase-1.8

getFieldTypes

public static Map<String,Field> getFieldTypes(SearchQuery query,
                                              NodeManager nm)

getGUIName

public String getGUIName(int plurality,
                         Locale locale)
Description copied from interface: NodeManager
Returns the descriptive name of this node manager ina a specified language.

Specified by:
getGUIName in interface NodeManager
Overrides:
getGUIName in class AbstractNodeManager
Parameters:
plurality - the plurality (number of objects) for which to return a description (NodeManager.GUI_SINGULAR or NodeManager.GUI_PLURAL)
locale - the locale that determines the language for the GUI name
Returns:
the descriptive name of this node manager

getName

public String getName()
Description copied from interface: NodeManager
Returns the name of this node manager. This name is a unique name.

Specified by:
getName in interface NodeManager
Overrides:
getName in class AbstractNodeManager
Returns:
the name of this node manager.

getDescription

public String getDescription()
Description copied from interface: NodeManager
Returns the description of this node manager.

Specified by:
getDescription in interface NodeManager
Overrides:
getDescription in class AbstractNodeManager
Returns:
the description of this node manager

getDescription

public String getDescription(Locale locale)
Description copied from interface: NodeManager
Returns the description of this node manager in a specified language.

Specified by:
getDescription in interface NodeManager
Overrides:
getDescription in class AbstractNodeManager
Parameters:
locale - the locale that determines the language for the description
Returns:
the description of this node manager


MMBase 2.0-SNAPSHOT - null