Author: michiel
Date: 2010-04-12 18:29:03 +0200 (Mon, 12 Apr 2010)
New Revision: 41856
Added:
mmbase/trunk/core/src/main/java/org/mmbase/bridge/LocalResolver.java
Modified:
mmbase/trunk/core/src/main/java/org/mmbase/module/core/CoreClusterQueries.java
mmbase/trunk/core/src/main/java/org/mmbase/module/core/CoreQueryContext.java
mmbase/trunk/core/src/main/java/org/mmbase/module/core/MMObjectNode.java
mmbase/trunk/core/src/main/java/org/mmbase/module/core/NodeSearchQuery.java
mmbase/trunk/core/src/main/java/org/mmbase/storage/search/legacy/QueryConvertor.java
mmbase/trunk/core/src/test/java/org/mmbase/storage/search/ClusterQueriesTest.java
Log:
Added: mmbase/trunk/core/src/main/java/org/mmbase/bridge/LocalResolver.java
===================================================================
--- mmbase/trunk/core/src/main/java/org/mmbase/bridge/LocalResolver.java
(rev 0)
+++ mmbase/trunk/core/src/main/java/org/mmbase/bridge/LocalResolver.java
2010-04-12 16:29:03 UTC (rev 41856)
@@ -0,0 +1,26 @@
+package org.mmbase.bridge;
+
+/**
+ * The resolver recognizing only the string 'local', which then returns
{...@link LocalContext#getCloudContext}.
+ *
+ * @since MMBase-2.0
+ */
+
+public class LocalResolver extends ContextProvider.Resolver {
+ @Override
+ public CloudContext resolve(String uri) {
+ if (uri.equals("local")){
+ return LocalContext.getCloudContext();
+ } else {
+ return null;
+ }
+ }
+ @Override
+ public boolean equals(Object o) {
+ return o != null && o instanceof LocalResolver;
+ }
+ @Override
+ public String toString() {
+ return "local";
+ }
+}
Modified:
mmbase/trunk/core/src/main/java/org/mmbase/module/core/CoreClusterQueries.java
===================================================================
---
mmbase/trunk/core/src/main/java/org/mmbase/module/core/CoreClusterQueries.java
2010-04-12 16:21:03 UTC (rev 41855)
+++
mmbase/trunk/core/src/main/java/org/mmbase/module/core/CoreClusterQueries.java
2010-04-12 16:29:03 UTC (rev 41856)
@@ -31,7 +31,7 @@
* @since MMBase-2.0
*/
-public class CoreClusterQueries extends ClusterQueries {
+class CoreClusterQueries extends ClusterQueries {
private static final Logger log=
Logging.getLoggerInstance(CoreClusterQueries.class);
@@ -41,6 +41,10 @@
private CoreClusterQueries() {
}
+ public QueryContext getQueryContext() {
+ return CoreQueryContext.INSTANCE;
+ }
+
protected int getNumberForAlias(String alias) {
int nodeNumber = MMBase.getMMBase().getOAlias().getNumber(alias);
if (nodeNumber < 0) {
@@ -55,7 +59,7 @@
QueryConvertor.setConstraint(query, where);
}
protected StepField getField(String fieldName, BasicSearchQuery query) {
- return ConstraintParser.getField(fieldName, query.getSteps());
+ return ConstraintParser.getField(getQueryContext(), fieldName,
query.getSteps());
}
protected boolean isRelation(String builder) {
@@ -145,9 +149,5 @@
throw new UnsupportedOperationException();
}
- @Override
- public Collection<CoreField> getFields(String buil) {
- return
MMBase.getMMBase().getBuilder(buil).getFields(org.mmbase.bridge.NodeManager.ORDER_CREATE);
- }
}
Modified:
mmbase/trunk/core/src/main/java/org/mmbase/module/core/CoreQueryContext.java
===================================================================
---
mmbase/trunk/core/src/main/java/org/mmbase/module/core/CoreQueryContext.java
2010-04-12 16:21:03 UTC (rev 41855)
+++
mmbase/trunk/core/src/main/java/org/mmbase/module/core/CoreQueryContext.java
2010-04-12 16:29:03 UTC (rev 41856)
@@ -9,8 +9,11 @@
*/
package org.mmbase.module.core;
+import java.util.*;
import org.mmbase.bridge.Field;
+import org.mmbase.core.CoreField;
import org.mmbase.storage.search.QueryContext;
+import org.mmbase.storage.search.ClusterQueries;
import org.mmbase.storage.*;
/**
*
@@ -22,6 +25,10 @@
public static final QueryContext INSTANCE = new CoreQueryContext();
+ public ClusterQueries getClusterQueries () {
+ return CoreClusterQueries.INSTANCE;
+ }
+
public String getStorageIdentifier(String s) {
StorageManagerFactory<?> factory =
MMBase.getMMBase().getStorageManagerFactory();
return (String) factory.getStorageIdentifier(s);
@@ -30,5 +37,11 @@
return MMBase.getMMBase().getBuilder(builder).getField(fieldName);
}
+
+ @Override
+ public Collection<CoreField> getFields(String buil) {
+ return
MMBase.getMMBase().getBuilder(buil).getFields(org.mmbase.bridge.NodeManager.ORDER_CREATE);
+ }
+
}
Modified:
mmbase/trunk/core/src/main/java/org/mmbase/module/core/MMObjectNode.java
===================================================================
--- mmbase/trunk/core/src/main/java/org/mmbase/module/core/MMObjectNode.java
2010-04-12 16:21:03 UTC (rev 41855)
+++ mmbase/trunk/core/src/main/java/org/mmbase/module/core/MMObjectNode.java
2010-04-12 16:29:03 UTC (rev 41856)
@@ -1338,7 +1338,7 @@
if (properties == null) {
properties = new HashMap<String,MMObjectNode>();
MMObjectBuilder bul = parent.mmb.getBuilder("properties");
- NodeSearchQuery query = new
NodeSearchQuery(bul.getTableName(), CoreClusterQueries.INSTANCE);
+ NodeSearchQuery query = new
NodeSearchQuery(bul.getTableName(), CoreQueryContext.INSTANCE);
StepField parentField = query.getField(bul.getField("parent"));
BasicFieldValueConstraint cons = new
BasicFieldValueConstraint(parentField, getNumber());
query.setConstraint(cons);
Modified:
mmbase/trunk/core/src/main/java/org/mmbase/module/core/NodeSearchQuery.java
===================================================================
--- mmbase/trunk/core/src/main/java/org/mmbase/module/core/NodeSearchQuery.java
2010-04-12 16:21:03 UTC (rev 41855)
+++ mmbase/trunk/core/src/main/java/org/mmbase/module/core/NodeSearchQuery.java
2010-04-12 16:29:03 UTC (rev 41856)
@@ -7,7 +7,7 @@
public NodeSearchQuery(MMObjectBuilder buil) {
- super(buil.getTableName(), CoreClusterQueries.INSTANCE);
+ super(buil.getTableName(), CoreQueryContext.INSTANCE);
}
public MMObjectBuilder getBuilder() {
Modified:
mmbase/trunk/core/src/main/java/org/mmbase/storage/search/legacy/QueryConvertor.java
===================================================================
---
mmbase/trunk/core/src/main/java/org/mmbase/storage/search/legacy/QueryConvertor.java
2010-04-12 16:21:03 UTC (rev 41855)
+++
mmbase/trunk/core/src/main/java/org/mmbase/storage/search/legacy/QueryConvertor.java
2010-04-12 16:29:03 UTC (rev 41856)
@@ -16,6 +16,7 @@
import org.mmbase.bridge.Field;
import org.mmbase.core.CoreField;
import org.mmbase.storage.StorageManagerFactory;
+import org.mmbase.module.core.CoreQueryContext;
import org.mmbase.storage.search.*;
import org.mmbase.storage.search.implementation.BasicCompositeConstraint;
import org.mmbase.storage.search.implementation.BasicFieldValueConstraint;
@@ -116,14 +117,14 @@
// "where"-clause.
// Strip leading "where ".
constraint =
- new ConstraintParser(query).toConstraint(where.substring(6));
+ new ConstraintParser(CoreQueryContext.INSTANCE,
query).toConstraint(where.substring(6));
} else if (where.substring(0, 6).equalsIgnoreCase("WHERE(")) {
// "where"-clause, without space following "where".
// Supported for backward compatibility.
// Strip leading "where".
constraint =
- new ConstraintParser(query).toConstraint(where.substring(5));
+ new ConstraintParser(CoreQueryContext.INSTANCE,
query).toConstraint(where.substring(5));
} else {
// AltaVista format.
Modified:
mmbase/trunk/core/src/test/java/org/mmbase/storage/search/ClusterQueriesTest.java
===================================================================
---
mmbase/trunk/core/src/test/java/org/mmbase/storage/search/ClusterQueriesTest.java
2010-04-12 16:21:03 UTC (rev 41855)
+++
mmbase/trunk/core/src/test/java/org/mmbase/storage/search/ClusterQueriesTest.java
2010-04-12 16:29:03 UTC (rev 41856)
@@ -22,7 +22,7 @@
RELATED =
MockCloudContext.getInstance().getCloud("mmbase").getRelationManager("related").getNumber();
}
- ClusterQueries instance = new
BridgeClusterQueries(MockCloudContext.getInstance().getCloud("mmbase"));
+ ClusterQueries instance = new BridgeClusterQueries(new
QueryContext.Bridge(MockCloudContext.getInstance().getCloud("mmbase")));
@Test
public void getUniqueTableAlias() {
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs