Java Doc for ClusterBuilder.java in  » Database-ORM » MMBase » org » mmbase » module » core » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Database ORM » MMBase » org.mmbase.module.core 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   org.mmbase.util.functions.FunctionProvider
      org.mmbase.module.core.MMTable
         org.mmbase.module.core.MMObjectBuilder
            org.mmbase.module.core.VirtualBuilder
               org.mmbase.module.core.ClusterBuilder

ClusterBuilder
public class ClusterBuilder extends VirtualBuilder (Code)
The builder for ClusterNode clusternodes .

Provides these methods to retrieve clusternodes:

Individual nodes in a 'cluster' node can be retrieved by calling the node's MMObjectNode.getNodeValue(String) getNodeValue() method, using the builder name (or step alias) as argument.
author:
   Rico Jansen
author:
   Pierre van Rooden
author:
   Rob van Maris
version:
   $Id: ClusterBuilder.java,v 1.93 2008/02/03 17:33:57 nklasens Exp $
See Also:   ClusterNode



Field Summary
final public static  intSEARCH_ALL
     Search for all relations.
final public static  intSEARCH_BOTH
     Search for all valid relations.
final public static  intSEARCH_DESTINATION
     Search for destinations, When searching relations, return only relations from source to deastination.
final public static  intSEARCH_EITHER
     Search for either destination or source. When searching a multilevel, return either relations from source to destination OR from destination to source. The returned set is decided through the typerel tabel.
final public static  intSEARCH_SOURCE
     Seach for sources.

Constructor Summary
public  ClusterBuilder(MMBase m)
     Creates ClusterBuilder instance.

Method Summary
 voidaddFields(BasicSearchQuery query, String expression, Map<String, BasicStep> stepsByAlias, Map<String, BasicStepField> fieldsByAlias)
     Retrieves fieldnames from an expression, and adds these to a search query.
 voidaddRelationDirections(BasicSearchQuery query, List<Integer> searchDirs, Map<String, Integer> roles)
     Adds relation directions.
Parameters:
  query - The search query.
Parameters:
  searchDirs - Specifies in which direction relations are to be followed.
 voidaddSortOrders(BasicSearchQuery query, List<String> fieldNames, List<String> directions, Map<String, BasicStepField> fieldsByAlias)
     Adds sorting orders to a search query.
 Map<String, BasicStep>addSteps(BasicSearchQuery query, List<String> tables, Map<String, Integer> roles, boolean includeAllReference, Map<String, BasicStepField> fieldsByAlias)
     Creates a full chain of steps, adds these to the specified query. This includes adding necessary relation tables when not explicitly specified, and generating unique table aliases where necessary. Optionally adds "number"-fields for all tables in the original chain.
Parameters:
  query - The searchquery.
Parameters:
  tables - The original chain of tables.
Parameters:
  roles - Map of tablenames mapped to Integer values,representing the nodenumber of a corresponing RelDef node.This method adds entries for table aliases that specify a role,e.g.
 MMObjectBuildergetBuilder(String tableAlias, Map<String, Integer> roles)
     Gets builder corresponding to the specified table alias. This amounts to removing the optionally appended digit from the table alias, and interpreting the result as either a tablename or a relation role.
Parameters:
  tableAlias - The table alias.Must be tablename or relation role, optionally appendedwith a digit, e.g.
public  StringgetBuilderNameFromField(String fieldName)
     Determines the builder part of a specified field.
public  List<MMObjectNode>getClusterNodes(SearchQuery query)
     Executes query, returns results as ClusterNode clusternodes or MMObjectNodes if the query is a Node-query.
Parameters:
  query - The query.
public  FieldDefsgetField(String fieldName)
     Return a field.
public static  StringgetFieldNameFromField(String fieldname)
     Determines the fieldname part of a specified field (without the builder name).
public  List<CoreField>getFields(int order)
    
public  Collection<CoreField>getFields()
    
public  Map<String, CoreField>getFields(MMObjectNode node)
    
public  StringgetGUIIndicator(MMObjectNode node)
     What should a GUI display for this node.
public  StringgetGUIIndicator(MMObjectNode node, Parameters pars)
     What should a GUI display for this node/field combo.
public  BasicSearchQuerygetMultiLevelSearchQuery(List<String> snodes, List<String> fields, String pdistinct, List<String> tables, String where, List<String> sortFields, List<String> directions, int searchDir)
     Creates search query that selects all the objects that match the searchkeys. The constraint must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint() .
Parameters:
  snodes - null or a list of numbersof nodes to start the search with.These have to be present in the first table listed in thetables parameter.
Parameters:
  fields - List of fieldnames to return.These should be formatted as stepalias.field,e.g.
public  BasicSearchQuerygetMultiLevelSearchQuery(List<String> snodes, List<String> fields, String pdistinct, List<String> tables, String where, List<String> sortFields, List<String> directions, List<Integer> searchDirs)
     Creates search query that selects all the objects that match the searchkeys. The constraint must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint() .
Parameters:
  snodes - null or a list of numbersof nodes to start the search with.These have to be present in the first table listed in thetables parameter.
Parameters:
  fields - List of fieldnames to return.These should be formatted as stepalias.field,e.g.
public  MMObjectNodegetNewNode(String owner)
     Get a new node, using this builder as its parent. The new node is a cluster node. Unlike most other nodes, a cluster node does not have a number, owner, or otype fields.
Parameters:
  owner - The administrator creating the new node (ignored).
 StepgetNodesStep(List<Step> steps, int nodeNumber)
     Gets first step from list, that corresponds to the builder of a specified node - or one of its parentbuilders.
Parameters:
  steps - The steps.
Parameters:
  nodeNumber - The number identifying the node.
public static  intgetSearchDir(String search)
     Translates a string to a search direction constant.
public static  StringgetSearchDirString(int search)
     Translates a search direction constant to a string.
public  byte[]getShortedByte(String fieldname, int number)
     Get binary data of a database blob field.
public  StringgetShortedText(String fieldname, int number)
     Get text from a blob field.
 StringgetUniqueTableAlias(String tableAlias, Set<String> tableAliases, Collection<String> originalAliases)
     Returns unique table alias, must be tablename/rolename, optionally appended with a digit. Tests the provided table alias for uniqueness, generates alternative table alias if the provided alias is already in use.
Parameters:
  tableAlias - The table alias.
Parameters:
  tableAliases - The table aliases that are already in use.
public  Vector<MMObjectNode>searchMultiLevelVector(int snode, Vector<String> fields, String pdistinct, Vector<String> tables, String where, Vector<String> orderVec, Vector<String> direction)
     Same as ClusterBuilder.searchMultiLevelVector(List,List,String,List,String,List,List,int)searchMultiLevelVector(snodes, fields, pdistinct, tables, where, orderVec, direction, RelationStep.DIRECTIONS_EITHER) , where snodes contains just the number specified by snode.
public  Vector<MMObjectNode>searchMultiLevelVector(Vector<String> snodes, Vector<String> fields, String pdistinct, Vector<String> tables, String where, Vector<String> orderVec, Vector<String> direction)
     Same as ClusterBuilder.searchMultiLevelVector(List,List,String,List,String,List,List,int)searchMultiLevelVector(snodes, fields, pdistinct, tables, where, orderVec, direction, RelationStep.DIRECTIONS_EITHER) .
public  Vector<MMObjectNode>searchMultiLevelVector(List<String> snodes, List<String> fields, String pdistinct, List<String> tables, String where, List<String> sortFields, List<String> directions, int searchDir)
     Return all the objects that match the searchkeys. The constraint must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint() .
Parameters:
  snodes - The numbers of the nodes to start the search with.
public  Vector<MMObjectNode>searchMultiLevelVector(List<String> snodes, List<String> fields, String pdistinct, List<String> tables, String where, List<String> sortFields, List<String> directions, List<Integer> searchDirs)
     Return all the objects that match the searchkeys. The constraint must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint() .
Parameters:
  snodes - The numbers of the nodes to start the search with.

Field Detail
SEARCH_ALL
final public static int SEARCH_ALL(Code)
Search for all relations. When searching a multilevel, return both relations from source to deastination and from destination to source. Allowed relations are not checked - ALL relations are used. This makes more inefficient queries, but it is not really wrong. RelationStep.DIRECTIONS_ALL



SEARCH_BOTH
final public static int SEARCH_BOTH(Code)
Search for all valid relations. When searching relations, return both relations from source to deastination and from destination to source, provided there is an allowed relation in that directon. RelationStep.DIRECTIONS_BOTH



SEARCH_DESTINATION
final public static int SEARCH_DESTINATION(Code)
Search for destinations, When searching relations, return only relations from source to deastination. RelationStep.DIRECTIONS_DESTINATION



SEARCH_EITHER
final public static int SEARCH_EITHER(Code)
Search for either destination or source. When searching a multilevel, return either relations from source to destination OR from destination to source. The returned set is decided through the typerel tabel. However, if both directions ARE somehow supported, the system only returns source to destination relations. This is the default value (for compatibility purposes). RelationStep.DIRECTIONS_EITHERRelationStep.DIRECTIONS_BOTH



SEARCH_SOURCE
final public static int SEARCH_SOURCE(Code)
Seach for sources. When searching a multilevel, return only relations from destination to source, provided directionality allows RelationStep.DIRECTIONS_SOURCE




Constructor Detail
ClusterBuilder
public ClusterBuilder(MMBase m)(Code)
Creates ClusterBuilder instance. Must be called from the MMBase class.
Parameters:
  m - the MMbase cloud creating the node




Method Detail
addFields
void addFields(BasicSearchQuery query, String expression, Map<String, BasicStep> stepsByAlias, Map<String, BasicStepField> fieldsByAlias)(Code)
Retrieves fieldnames from an expression, and adds these to a search query. The expression may be either a fieldname or a a functionname with a (commaseparated) parameterlist between parenthesis (parameters being expressions themselves).

Fieldnames must be formatted as stepalias.field.
Parameters:
  query - The query.
Parameters:
  expression - The expression.
Parameters:
  stepsByAlias - Map, mapping step aliases to the steps in the query.
Parameters:
  fieldsByAlias - Map, mapping field aliases (fieldname prefixed bytable alias) to the stepfields in the query.An entry is added for each stepfield added to the query.
since:
   MMBase-1.7




addRelationDirections
void addRelationDirections(BasicSearchQuery query, List<Integer> searchDirs, Map<String, Integer> roles)(Code)
Adds relation directions.
Parameters:
  query - The search query.
Parameters:
  searchDirs - Specifies in which direction relations are to be followed. You can specify a direction for eachrelation in the path. If you specify less directions than there are relations, the last specified direction is usedfor the remaining relations. If you specify an empty list the default direction is BOTH.
Parameters:
  roles - Map of tablenames mapped to Integer values,representing the nodenumber of the corresponing RelDef node.
since:
   MMBase-1.7



addSortOrders
void addSortOrders(BasicSearchQuery query, List<String> fieldNames, List<String> directions, Map<String, BasicStepField> fieldsByAlias)(Code)
Adds sorting orders to a search query.
Parameters:
  query - The query.
Parameters:
  fieldNames - The fieldnames prefixed by the table aliases.
Parameters:
  directions - The corresponding sorting directions ("UP"/"DOWN").
Parameters:
  fieldsByAlias - Map, mapping field aliases (fieldname prefixed bytable alias) to the stepfields in the query.
since:
   MMBase-1.7



addSteps
Map<String, BasicStep> addSteps(BasicSearchQuery query, List<String> tables, Map<String, Integer> roles, boolean includeAllReference, Map<String, BasicStepField> fieldsByAlias)(Code)
Creates a full chain of steps, adds these to the specified query. This includes adding necessary relation tables when not explicitly specified, and generating unique table aliases where necessary. Optionally adds "number"-fields for all tables in the original chain.
Parameters:
  query - The searchquery.
Parameters:
  tables - The original chain of tables.
Parameters:
  roles - Map of tablenames mapped to Integer values,representing the nodenumber of a corresponing RelDef node.This method adds entries for table aliases that specify a role,e.g. "related" or "related2".
Parameters:
  includeAllReference - Indicates if the "number"-fields mustincluded in the query for all tables in the original chain.
Parameters:
  fieldsByAlias - Map, mapping aliases (fieldname prefixed by tablealias) to the stepfields in the query. An entry is added foreach stepfield added to the query. Map, maps original table names to steps.
since:
   MMBase-1.7



getBuilder
MMObjectBuilder getBuilder(String tableAlias, Map<String, Integer> roles)(Code)
Gets builder corresponding to the specified table alias. This amounts to removing the optionally appended digit from the table alias, and interpreting the result as either a tablename or a relation role.
Parameters:
  tableAlias - The table alias.Must be tablename or relation role, optionally appendedwith a digit, e.g. images, images3, related and related4.
Parameters:
  roles - Map of tablenames mapped to Integer values,representing the nodenumber of a corresponing RelDef node.This method adds entries for table aliases that specify a role,e.g. "related" or "related2". The builder.
since:
   MMBase-1.7



getBuilderNameFromField
public String getBuilderNameFromField(String fieldName)(Code)
Determines the builder part of a specified field.
Parameters:
  fieldName - the name of the field the name of the field's builder



getClusterNodes
public List<MMObjectNode> getClusterNodes(SearchQuery query) throws SearchQueryException(Code)
Executes query, returns results as ClusterNode clusternodes or MMObjectNodes if the query is a Node-query.
Parameters:
  query - The query. The clusternodes.
throws:
  org.mmbase.storage.search.SearchQueryException - When an exception occurred while retrieving the results.
since:
   MMBase-1.7
See Also:   org.mmbase.storage.search.SearchQueryHandler.getNodes



getField
public FieldDefs getField(String fieldName)(Code)
Return a field.
Parameters:
  fieldName - the requested field's name the field



getFieldNameFromField
public static String getFieldNameFromField(String fieldname)(Code)
Determines the fieldname part of a specified field (without the builder name).
Parameters:
  fieldname - the name of the field the name of the field without its builder



getFields
public List<CoreField> getFields(int order)(Code)



getFields
public Collection<CoreField> getFields()(Code)



getFields
public Map<String, CoreField> getFields(MMObjectNode node)(Code)

since:
   MMBase-1.8



getGUIIndicator
public String getGUIIndicator(MMObjectNode node)(Code)
What should a GUI display for this node. This version displays the contents of the 'name' field(s) that were retrieved. XXX: should be changed to something better
Parameters:
  node - The node to display the display of the node as a String



getGUIIndicator
public String getGUIIndicator(MMObjectNode node, Parameters pars)(Code)
What should a GUI display for this node/field combo. For a multilevel node, the builder tries to determine the original builder of a field, and invoke the method using that builder.
Parameters:
  node - The node to display
Parameters:
  pars - Parameters, see MMObjectBuilder.GUI_PARAMETERS the display of the node's field as a String, null if not specified



getMultiLevelSearchQuery
public BasicSearchQuery getMultiLevelSearchQuery(List<String> snodes, List<String> fields, String pdistinct, List<String> tables, String where, List<String> sortFields, List<String> directions, int searchDir)(Code)
Creates search query that selects all the objects that match the searchkeys. The constraint must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint() .
Parameters:
  snodes - null or a list of numbersof nodes to start the search with.These have to be present in the first table listed in thetables parameter.
Parameters:
  fields - List of fieldnames to return.These should be formatted as stepalias.field,e.g. 'people.lastname'
Parameters:
  pdistinct - 'YES' if the records returned need to bedistinct (ignoring case).Any other value indicates double values can be returned.
Parameters:
  tables - The builder chain, a list containing builder names.The search is formed by following the relations betweensuccessive builders in the list.It is possible to explicitly supply a relation builder byplacing the name of the builder between two builders to search.Example: company,people or typedef,authrel,people.
Parameters:
  where - The constraint, must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint().E.g. "WHERE news.title LIKE '%MMBase%' AND news.title > 100"
Parameters:
  sortFields - null or a list of fieldnames on which you want to sort.
Parameters:
  directions - null or a list of values containing, for each field in thesortFields parameter, a value indicating whether the sort isascending (UP) or descending (DOWN).If less values are supplied then there are fields in order,the first value in the list is used for the remaining fields.Default value is 'UP'.
Parameters:
  searchDir - Specifies in which direction relations are to befollowed, this must be one of the values defined by this class.ClusterBuilder.getMultiLevelSearchQuery(List snodes,List fields,String pdistinct,List tables,String where,List orderVec,List directions,int searchDir) the resulting search query.
since:
   MMBase-1.7



getMultiLevelSearchQuery
public BasicSearchQuery getMultiLevelSearchQuery(List<String> snodes, List<String> fields, String pdistinct, List<String> tables, String where, List<String> sortFields, List<String> directions, List<Integer> searchDirs)(Code)
Creates search query that selects all the objects that match the searchkeys. The constraint must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint() .
Parameters:
  snodes - null or a list of numbersof nodes to start the search with.These have to be present in the first table listed in thetables parameter.
Parameters:
  fields - List of fieldnames to return.These should be formatted as stepalias.field,e.g. 'people.lastname'
Parameters:
  pdistinct - 'YES' if the records returned need to bedistinct (ignoring case).Any other value indicates double values can be returned.
Parameters:
  tables - The builder chain, a list containing builder names.The search is formed by following the relations betweensuccessive builders in the list.It is possible to explicitly supply a relation builder byplacing the name of the builder between two builders to search.Example: company,people or typedef,authrel,people.
Parameters:
  where - The constraint, must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint().E.g. "WHERE news.title LIKE '%MMBase%' AND news.title > 100"
Parameters:
  sortFields - null or a list of fieldnames on which you want to sort.
Parameters:
  directions - null or a list of values containing, for each field in thesortFields parameter, a value indicating whether the sort isascending (UP) or descending (DOWN).If less values are supplied then there are fields in order,the first value in the list is used for the remaining fields.Default value is 'UP'.
Parameters:
  searchDirs - Specifies in which direction relations are to befollowed, this must be one of the values defined by this class. the resulting search query.
since:
   MMBase-1.7



getNewNode
public MMObjectNode getNewNode(String owner)(Code)
Get a new node, using this builder as its parent. The new node is a cluster node. Unlike most other nodes, a cluster node does not have a number, owner, or otype fields.
Parameters:
  owner - The administrator creating the new node (ignored). A newly initialized VirtualNode.



getNodesStep
Step getNodesStep(List<Step> steps, int nodeNumber)(Code)
Gets first step from list, that corresponds to the builder of a specified node - or one of its parentbuilders.
Parameters:
  steps - The steps.
Parameters:
  nodeNumber - The number identifying the node. The step, or null when not found.
since:
   MMBase-1.7



getSearchDir
public static int getSearchDir(String search)(Code)
Translates a string to a search direction constant.
since:
   MMBase-1.6



getSearchDirString
public static String getSearchDirString(int search)(Code)
Translates a search direction constant to a string.
since:
   MMBase-1.6



getShortedByte
public byte[] getShortedByte(String fieldname, int number)(Code)
Get binary data of a database blob field. The data is cut if it is to long.
Parameters:
  fieldname - name of the field
Parameters:
  number - number of the object in the table an array of byte containing the contents of a field as text



getShortedText
public String getShortedText(String fieldname, int number)(Code)
Get text from a blob field. The text is cut if it is to long.
Parameters:
  fieldname - name of the field
Parameters:
  number - number of the object in the table a String containing the contents of a field as text



getUniqueTableAlias
String getUniqueTableAlias(String tableAlias, Set<String> tableAliases, Collection<String> originalAliases)(Code)
Returns unique table alias, must be tablename/rolename, optionally appended with a digit. Tests the provided table alias for uniqueness, generates alternative table alias if the provided alias is already in use.
Parameters:
  tableAlias - The table alias.
Parameters:
  tableAliases - The table aliases that are already in use. Theresulting table alias is added to this collection.
Parameters:
  originalAliases - The originally supplied aliases - generatedaliases should not match any of these. The resulting table alias.
since:
   MMBase-1.7



searchMultiLevelVector
public Vector<MMObjectNode> searchMultiLevelVector(int snode, Vector<String> fields, String pdistinct, Vector<String> tables, String where, Vector<String> orderVec, Vector<String> direction)(Code)
Same as ClusterBuilder.searchMultiLevelVector(List,List,String,List,String,List,List,int)searchMultiLevelVector(snodes, fields, pdistinct, tables, where, orderVec, direction, RelationStep.DIRECTIONS_EITHER) , where snodes contains just the number specified by snode.
See Also:   ClusterBuilder.searchMultiLevelVector(List,List,String,List,String,List,List,List)



searchMultiLevelVector
public Vector<MMObjectNode> searchMultiLevelVector(Vector<String> snodes, Vector<String> fields, String pdistinct, Vector<String> tables, String where, Vector<String> orderVec, Vector<String> direction)(Code)
Same as ClusterBuilder.searchMultiLevelVector(List,List,String,List,String,List,List,int)searchMultiLevelVector(snodes, fields, pdistinct, tables, where, orderVec, direction, RelationStep.DIRECTIONS_EITHER) .
See Also:   ClusterBuilder.searchMultiLevelVector(List,List,String,List,String,List,List,int)



searchMultiLevelVector
public Vector<MMObjectNode> searchMultiLevelVector(List<String> snodes, List<String> fields, String pdistinct, List<String> tables, String where, List<String> sortFields, List<String> directions, int searchDir)(Code)
Return all the objects that match the searchkeys. The constraint must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint() .
Parameters:
  snodes - The numbers of the nodes to start the search with. These have to be present in the first tablelisted in the tables parameter.
Parameters:
  fields - The fieldnames to return. This should include the name of the builder. Fieldnames without a builder prefix are ignored.Fieldnames are accessible in the nodes returned in the same format (i.e. with manager indication) as they are specified in this parameter.Examples: 'people.lastname'
Parameters:
  pdistinct - 'YES' indicates the records returned need to be distinct. Any other value indicates double values can be returned.
Parameters:
  tables - The builder chain. A list containing builder names.The search is formed by following the relations between successive builders in the list. It is possible to explicitly supplya relation builder by placing the name of the builder between two builders to search.Example: company,people or typedef,authrel,people.
Parameters:
  where - The constraint, must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint().E.g. "WHERE news.title LIKE '%MMBase%' AND news.title > 100"
Parameters:
  sortFields - the fieldnames on which you want to sort.
Parameters:
  directions - A list of values containing, for each field in the order parameter, a value indicating whether the sort isascending (UP) or descending (DOWN). If less values are syupplied then there are fields in order,the first value in the list is used for the remaining fields. Default value is 'UP'.
Parameters:
  searchDir - Specifies in which direction relations are to befollowed, this must be one of the values defined by this class. a Vector containing all matching nodesClusterBuilder.searchMultiLevelVector(List snodes,List fields,String pdistinct,List tables,String where,List orderVec,List directions,List searchDirs)



searchMultiLevelVector
public Vector<MMObjectNode> searchMultiLevelVector(List<String> snodes, List<String> fields, String pdistinct, List<String> tables, String where, List<String> sortFields, List<String> directions, List<Integer> searchDirs)(Code)
Return all the objects that match the searchkeys. The constraint must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint() .
Parameters:
  snodes - The numbers of the nodes to start the search with. These have to be present in the first tablelisted in the tables parameter.
Parameters:
  fields - The fieldnames to return. This should include the name of the builder. Fieldnames without a builder prefix are ignored.Fieldnames are accessible in the nodes returned in the same format (i.e. with manager indication) as they are specified in this parameter.Examples: 'people.lastname'
Parameters:
  pdistinct - 'YES' indicates the records returned need to be distinct. Any other value indicates double values can be returned.
Parameters:
  tables - The builder chain. A list containing builder names.The search is formed by following the relations between successive builders in the list. It is possible to explicitly supplya relation builder by placing the name of the builder between two builders to search.Example: company,people or typedef,authrel,people.
Parameters:
  where - The constraint, must be in one of the formats specified by org.mmbase.util.QueryConvertor.setConstraint(BasicSearchQueryString)QueryConvertor#setConstraint().E.g. "WHERE news.title LIKE '%MMBase%' AND news.title > 100"
Parameters:
  sortFields - the fieldnames on which you want to sort.
Parameters:
  directions - A list of values containing, for each field in the order parameter, a value indicating whether the sort isascending (UP) or descending (DOWN). If less values are syupplied then there are fields in order,the first value in the list is used for the remaining fields. Default value is 'UP'.
Parameters:
  searchDirs - Specifies in which direction relations are to be followed. You can specify a direction for eachrelation in the path. If you specify less directions than there are relations, the last specified direction is usedfor the remaining relations. If you specify an empty list the default direction is BOTH. a Vector containing all matching nodes



Methods inherited from org.mmbase.module.core.VirtualBuilder
public boolean create()(Code)(Java Doc)
public int getDBState(String fieldName)(Code)(Java Doc)
public Map<String, CoreField> getFields(MMObjectNode node)(Code)(Java Doc)
public String getGUIIndicator(MMObjectNode node)(Code)(Java Doc)
public MMObjectNode getNewNode(String owner)(Code)(Java Doc)
protected byte[] getShortedByte(String fieldName, MMObjectNode node)(Code)(Java Doc)
protected String getShortedText(String fieldName, MMObjectNode node)(Code)(Java Doc)
public boolean init()(Code)(Java Doc)
public int insert(String owner, MMObjectNode node)(Code)(Java Doc)

Fields inherited from org.mmbase.module.core.MMObjectBuilder
final public static Parameter[] AGE_PARAMETERS(Code)(Java Doc)
final public static String DEFAULT_ALINEA(Code)(Java Doc)
final public static String DEFAULT_EOL(Code)(Java Doc)
final public static int EVENT_TYPE_LOCAL(Code)(Java Doc)
final public static int EVENT_TYPE_REMOTE(Code)(Java Doc)
final public static String FIELD_NUMBER(Code)(Java Doc)
final public static String FIELD_OBJECT_TYPE(Code)(Java Doc)
final public static String FIELD_OWNER(Code)(Java Doc)
final public static String GUI_INDICATOR(Code)(Java Doc)
final public static Parameter[] GUI_PARAMETERS(Code)(Java Doc)
final public static String SYSTEM_OWNER(Code)(Java Doc)
final public static int TEMPNODE_DEFAULT_SIZE(Code)(Java Doc)
final public static String TMP_FIELD_EXISTS(Code)(Java Doc)
final public static String TMP_FIELD_NUMBER(Code)(Java Doc)
final protected static Parameter[] WRAP_PARAMETERS(Code)(Java Doc)
protected boolean broadCastChanges(Code)(Java Doc)
public String description(Code)(Java Doc)
public Hashtable<String, String> descriptions(Code)(Java Doc)
final protected Map<String, CoreField> fields(Code)(Java Doc)
protected static BlobCache genericBlobCache(Code)(Java Doc)
protected Function<Collection<? extends Function>> getFunctions(Code)(Java Doc)
protected Function<String> guiFunction(Code)(Java Doc)
protected Function<Object> infoFunction(Code)(Java Doc)
protected long internalVersion(Code)(Java Doc)
String maintainer(Code)(Java Doc)
protected static org.mmbase.cache.NodeCache nodeCache(Code)(Java Doc)
protected int oType(Code)(Java Doc)
Hashtable<String, String> pluralNames(Code)(Java Doc)
public String searchAge(Code)(Java Doc)
Hashtable<String, String> singularNames(Code)(Java Doc)
public static Map<String, MMObjectNode> temporaryNodes(Code)(Java Doc)
protected boolean virtual(Code)(Java Doc)
protected Function<String> wrapFunction(Code)(Java Doc)
String xmlPath(Code)(Java Doc)

Methods inherited from org.mmbase.module.core.MMObjectBuilder
public void addEventListener(org.mmbase.core.event.EventListener listener)(Code)(Java Doc)
public void addField(CoreField def)(Code)(Java Doc)
public boolean addLocalObserver(MMBaseObserver obs)(Code)(Java Doc)
public boolean addRemoteObserver(MMBaseObserver obs)(Code)(Java Doc)
public boolean broadcastChanges()(Code)(Java Doc)
public boolean checkAddTmpField(String field)(Code)(Java Doc)
public int clearBlobCache(int nodeNumber)(Code)(Java Doc)
public boolean commit(MMObjectNode node)(Code)(Java Doc)
public boolean create()(Code)(Java Doc)
public boolean createAlias(int number, String alias, String owner)(Code)(Java Doc)
public boolean createAlias(int number, String alias)(Code)(Java Doc)
public void delete()(Code)(Java Doc)
final public boolean equals(Object o)(Code)(Java Doc)
public boolean equals(MMObjectNode o1, MMObjectNode o2)(Code)(Java Doc)
protected Object executeFunction(MMObjectNode node, String function, List arguments)(Code)(Java Doc)
protected Object executeFunction(MMObjectNode node, String function, String field)(Code)(Java Doc)
public boolean fieldLocalChanged(String number, String builder, String field, String value)(Code)(Java Doc)
public List<MMObjectBuilder> getAncestors()(Code)(Java Doc)
protected BlobCache getBlobCache(String fieldName)(Code)(Java Doc)
public String getClassName()(Code)(Java Doc)
public File getConfigFile()(Code)(Java Doc)
public String getConfigResource()(Code)(Java Doc)
public int getDBState(String fieldName)(Code)(Java Doc)
public int getDBType(String fieldName)(Code)(Java Doc)
public DataTypeCollector getDataTypeCollector()(Code)(Java Doc)
public MMObjectNode getDefaultTeaser(MMObjectNode node, MMObjectNode tnode)(Code)(Java Doc)
public String getDefaultUrl(int src)(Code)(Java Doc)
public List<MMObjectBuilder> getDescendants()(Code)(Java Doc)
public String getDescription()(Code)(Java Doc)
public String getDescription(String lang)(Code)(Java Doc)
public Hashtable<String, String> getDescriptions()(Code)(Java Doc)
public MMObjectNode getEmptyNode(String owner)(Code)(Java Doc)
public FieldDefs getField(String fieldName)(Code)(Java Doc)
public Set<String> getFieldNames()(Code)(Java Doc)
public Collection<CoreField> getFields()(Code)(Java Doc)
public List<CoreField> getFields(int sortOrder)(Code)(Java Doc)
protected Function getFunction(MMObjectNode node, String functionName)(Code)(Java Doc)
protected Vector<String> getFunctionParameters(String fields)(Code)(Java Doc)
final Object getFunctionValue(MMObjectNode node, String functionName, List parameters)(Code)(Java Doc)
protected Collection<Function<?>> getFunctions(MMObjectNode node)(Code)(Java Doc)
public String getGUIIndicator(MMObjectNode node, Parameters pars)(Code)(Java Doc)
public String getGUIIndicator(MMObjectNode node)(Code)(Java Doc)
public String getGUIIndicator(String fieldName, MMObjectNode node)(Code)(Java Doc)
protected String getHTML(String body)(Code)(Java Doc)
public String getInitParameter(String name)(Code)(Java Doc)
public Map<String, String> getInitParameters()(Code)(Java Doc)
public Map getInitParameters(String contextPath)(Code)(Java Doc)
public long getInternalVersion()(Code)(Java Doc)
public Vector<String> getList(PageInfo sp, StringTagger tagger, StringTokenizer tok)(Code)(Java Doc)
protected String getLocaleGUIIndicator(Locale locale, String field, MMObjectNode node)(Code)(Java Doc)
protected String getLocaleGUIIndicator(Locale locale, MMObjectNode node)(Code)(Java Doc)
public String getMachineName()(Code)(Java Doc)
public String getMaintainer()(Code)(Java Doc)
public MMObjectNode getNewNode(String owner)(Code)(Java Doc)
protected MMObjectNode getNewTmpNode(String owner, String key)(Code)(Java Doc)
public FieldDefs getNextField(String currentfield, int sortorder)(Code)(Java Doc)
public FieldDefs getNextField(String currentfield)(Code)(Java Doc)
public MMObjectNode getNode(String key, boolean useCache)(Code)(Java Doc)
public MMObjectNode getNode(String key)(Code)(Java Doc)
public MMObjectNode getNode(int number)(Code)(Java Doc)
public MMObjectNode getNodeFromCache(Integer number)(Code)(Java Doc)
protected String getNodeGUIIndicator(MMObjectNode node, Parameters params)(Code)(Java Doc)
public int getNumber()(Code)(Java Doc)
public int getObjectType()(Code)(Java Doc)
protected Object getObjectValue(MMObjectNode node, String field)(Code)(Java Doc)
public MMObjectBuilder getParentBuilder()(Code)(Java Doc)
public String getPluralName(String lang)(Code)(Java Doc)
public String getPluralName()(Code)(Java Doc)
public Hashtable<String, String> getPluralNames()(Code)(Java Doc)
public Vector<MMObjectNode> getRelations_main(int src)(Code)(Java Doc)
public String getSearchAge()(Code)(Java Doc)
public String getShort(String str, int len)(Code)(Java Doc)
protected byte[] getShortedByte(String fieldName, MMObjectNode node)(Code)(Java Doc)
protected String getShortedText(String fieldName, MMObjectNode node)(Code)(Java Doc)
public String getSingularName(String lang)(Code)(Java Doc)
public String getSingularName()(Code)(Java Doc)
public Hashtable<String, String> getSingularNames()(Code)(Java Doc)
public String getSmartPath(String documentRoot, String path, String nodeNumber, String version)(Code)(Java Doc)
protected static MMObjectNode getTmpNode(String key)(Code)(Java Doc)
protected static String getURLEncode(String body)(Code)(Java Doc)
public Object getValue(MMObjectNode node, String field)(Code)(Java Doc)
public int getVersion()(Code)(Java Doc)
protected static String getWAP(String body)(Code)(Java Doc)
public String getXMLPath()(Code)(Java Doc)
public boolean hasField(String fieldName)(Code)(Java Doc)
public int hashCode()(Code)(Java Doc)
public int hashCode(MMObjectNode o)(Code)(Java Doc)
public static String hostname_function(String url)(Code)(Java Doc)
public boolean init()(Code)(Java Doc)
public int insert(int oType, String owner)(Code)(Java Doc)
public int insert(String owner, MMObjectNode node)(Code)(Java Doc)
public boolean isExtensionOf(MMObjectBuilder o)(Code)(Java Doc)
public boolean isNodeCached(Integer number)(Code)(Java Doc)
public boolean isVirtual()(Code)(Java Doc)
public void loadInitParameters()(Code)(Java Doc)
protected Function newFunctionInstance(String name, Parameter[] parameters, ReturnType returnType)(Code)(Java Doc)
public boolean nodeLocalChanged(String machine, String number, String builder, String ctype)(Code)(Java Doc)
public boolean nodeRemoteChanged(String machine, String number, String builder, String ctype)(Code)(Java Doc)
public void notify(NodeEvent event)(Code)(Java Doc)
public void notify(RelationEvent event)(Code)(Java Doc)
public MMObjectNode preCommit(MMObjectNode node)(Code)(Java Doc)
public boolean process(PageInfo sp, StringTokenizer command, Hashtable cmds, Hashtable vars)(Code)(Java Doc)
static void putTmpNode(String key, MMObjectNode node)(Code)(Java Doc)
public void removeEventListener(org.mmbase.core.event.EventListener listener)(Code)(Java Doc)
public void removeField(String fieldName)(Code)(Java Doc)
public boolean removeLocalObserver(MMBaseObserver obs)(Code)(Java Doc)
public void removeNode(MMObjectNode node)(Code)(Java Doc)
public void removeRelations(MMObjectNode node)(Code)(Java Doc)
public boolean removeRemoteObserver(MMBaseObserver obs)(Code)(Java Doc)
protected void removeSyncNodes(MMObjectNode node)(Code)(Java Doc)
static void removeTmpNode(String key)(Code)(Java Doc)
public String replace(PageInfo sp, StringTokenizer tok)(Code)(Java Doc)
public MMObjectNode safeCache(Integer n, MMObjectNode node)(Code)(Java Doc)
boolean safeCommit(MMObjectNode node)(Code)(Java Doc)
int safeInsert(MMObjectNode node, String userName)(Code)(Java Doc)
public boolean sendFieldChangeSignal(MMObjectNode node, String fieldName)(Code)(Java Doc)
public void setDefaults(MMObjectNode node)(Code)(Java Doc)
public void setDescription(String e)(Code)(Java Doc)
public void setDescriptions(Hashtable<String, String> e)(Code)(Java Doc)
public void setFields(List<CoreField> f)(Code)(Java Doc)
public void setInitParameter(String name, String value)(Code)(Java Doc)
void setInitParameters(Hashtable<String, String> properties)(Code)(Java Doc)
public void setMaintainer(String m)(Code)(Java Doc)
public void setParentBuilder(MMObjectBuilder parent)(Code)(Java Doc)
public void setPluralNames(Hashtable<String, String> names)(Code)(Java Doc)
public void setSearchAge(String age)(Code)(Java Doc)
public void setSingularNames(Hashtable<String, String> names)(Code)(Java Doc)
protected String setUniqueValue(MMObjectNode node, String field, String baseValue)(Code)(Java Doc)
protected int setUniqueValue(MMObjectNode node, String field, int offset)(Code)(Java Doc)
public boolean setValue(MMObjectNode node, String fieldName, Object originalValue)(Code)(Java Doc)
public boolean setValue(MMObjectNode node, String fieldName)(Code)(Java Doc)
public void setVersion(int i)(Code)(Java Doc)
public void setXMLPath(String m)(Code)(Java Doc)
public void testValidData(MMObjectNode node) throws InvalidDataException(Code)(Java Doc)
public String toString()(Code)(Java Doc)
public String toString(MMObjectNode n)(Code)(Java Doc)
protected void update()(Code)(Java Doc)
protected void updateFields()(Code)(Java Doc)
public static String wrap(String text, int width)(Code)(Java Doc)

Fields inherited from org.mmbase.module.core.MMTable
protected int maxNodesFromQuery(Code)(Java Doc)
protected MMBase mmb(Code)(Java Doc)
protected StorageConnector storageConnector(Code)(Java Doc)
protected String tableName(Code)(Java Doc)

Methods inherited from org.mmbase.module.core.MMTable
public int count(String where)(Code)(Java Doc)
public int count(NodeSearchQuery query) throws SearchQueryException(Code)(Java Doc)
public boolean created()(Code)(Java Doc)
public String getFullTableName()(Code)(Java Doc)
public MMBase getMMBase()(Code)(Java Doc)
public MMObjectNode getNode(int number, boolean useCache)(Code)(Java Doc)
public int getNodeType(int number)(Code)(Java Doc)
protected List<MMObjectNode> getNodes(Collection<MMObjectNode> virtuals)(Code)(Java Doc)
public List<MMObjectNode> getNodes(NodeSearchQuery query) throws SearchQueryException(Code)(Java Doc)
public List<MMObjectNode> getNodes()(Code)(Java Doc)
public StorageConnector getStorageConnector()(Code)(Java Doc)
public String getTableName()(Code)(Java Doc)
public Enumeration<MMObjectNode> search(String where)(Code)(Java Doc)
public Vector<MMObjectNode> searchVector(String where)(Code)(Java Doc)
public void setMMBase(MMBase m)(Code)(Java Doc)
public void setTableName(String tableName)(Code)(Java Doc)
public int size()(Code)(Java Doc)

Fields inherited from org.mmbase.util.functions.FunctionProvider
protected Map<String, Function<?>> functions(Code)(Java Doc)
protected Function<Collection<Function<?>>> getFunctions(Code)(Java Doc)

Methods inherited from org.mmbase.util.functions.FunctionProvider
public Function addFunction(Function function)(Code)(Java Doc)
public Parameters createParameters(String functionName)(Code)(Java Doc)
public Function getFunction(String functionName)(Code)(Java Doc)
public Object getFunctionValue(String functionName, List parameters)(Code)(Java Doc)
public Collection<Function<?>> getFunctions()(Code)(Java Doc)
protected Function newFunctionInstance(String name, Parameter[] parameters, ReturnType returnType)(Code)(Java Doc)

Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.