You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by ds...@apache.org on 2009/09/11 23:16:36 UTC
svn commit: r814035 - in
/felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi:
AbstractExpr.java And.java Cardinality.java ExprVisitor.java LDAPExpr.java
Not.java Or.java SimpleTerm.java
Author: dsavage
Date: Fri Sep 11 21:16:33 2009
New Revision: 814035
URL: http://svn.apache.org/viewvc?rev=814035&view=rev
Log:
tidy up visitor pattern for ldap classes so it actually does what you'd expect
also delete unused Cardinality class
Added:
felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/AbstractExpr.java
Removed:
felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/Cardinality.java
Modified:
felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/And.java
felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/ExprVisitor.java
felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/LDAPExpr.java
felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/Not.java
felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/Or.java
felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/SimpleTerm.java
Added: felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/AbstractExpr.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/AbstractExpr.java?rev=814035&view=auto
==============================================================================
--- felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/AbstractExpr.java (added)
+++ felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/AbstractExpr.java Fri Sep 11 21:16:33 2009
@@ -0,0 +1,30 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.felix.sigil.common.osgi;
+
+public abstract class AbstractExpr implements LDAPExpr
+{
+ public void visit(ExprVisitor visitor) {
+ visitor.visitExpr(this);
+ for ( LDAPExpr expr : getChildren() ) {
+ visitor.visitExpr( expr );
+ }
+ }
+}
Modified: felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/And.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/And.java?rev=814035&r1=814034&r2=814035&view=diff
==============================================================================
--- felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/And.java (original)
+++ felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/And.java Fri Sep 11 21:16:33 2009
@@ -23,7 +23,7 @@
import java.util.Map;
-public class And implements LDAPExpr
+public class And extends AbstractExpr
{
/**
@@ -91,12 +91,6 @@
}
- public void visit( ExprVisitor v )
- {
- v.visitAnd( this );
- }
-
-
public LDAPExpr[] getChildren()
{
return children;
Modified: felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/ExprVisitor.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/ExprVisitor.java?rev=814035&r1=814034&r2=814035&view=diff
==============================================================================
--- felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/ExprVisitor.java (original)
+++ felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/ExprVisitor.java Fri Sep 11 21:16:33 2009
@@ -22,19 +22,5 @@
public interface ExprVisitor
{
-
- void visitAnd( And a );
-
-
- void visitOr( Or o );
-
-
- void visitNot( Not n );
-
-
- void visitSimple( SimpleTerm st );
-
-
- // if none of the above matches use this
- void visitAny( LDAPExpr ex );
+ void visitExpr(LDAPExpr expr);
}
Modified: felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/LDAPExpr.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/LDAPExpr.java?rev=814035&r1=814034&r2=814035&view=diff
==============================================================================
--- felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/LDAPExpr.java (original)
+++ felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/LDAPExpr.java Fri Sep 11 21:16:33 2009
@@ -27,8 +27,8 @@
public interface LDAPExpr extends Serializable
{
- public static final LDAPExpr[] CHILDLESS = new LDAPExpr[]
- {};
+ public static final LDAPExpr[] CHILDLESS = new LDAPExpr[0];
+
public static LDAPExpr ACCEPT_ALL = Expressions.T;
Modified: felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/Not.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/Not.java?rev=814035&r1=814034&r2=814035&view=diff
==============================================================================
--- felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/Not.java (original)
+++ felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/Not.java Fri Sep 11 21:16:33 2009
@@ -23,7 +23,7 @@
import java.util.Map;
-public class Not implements LDAPExpr
+public class Not extends AbstractExpr
{
/**
@@ -70,12 +70,6 @@
}
- public void visit( ExprVisitor v )
- {
- v.visitNot( this );
- }
-
-
public LDAPExpr[] getChildren()
{
return children;
Modified: felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/Or.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/Or.java?rev=814035&r1=814034&r2=814035&view=diff
==============================================================================
--- felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/Or.java (original)
+++ felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/Or.java Fri Sep 11 21:16:33 2009
@@ -23,7 +23,7 @@
import java.util.Map;
-public class Or implements LDAPExpr
+public class Or extends AbstractExpr
{
/**
@@ -92,12 +92,6 @@
}
- public void visit( ExprVisitor v )
- {
- v.visitOr( this );
- }
-
-
public LDAPExpr[] getChildren()
{
return children;
Modified: felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/SimpleTerm.java
URL: http://svn.apache.org/viewvc/felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/SimpleTerm.java?rev=814035&r1=814034&r2=814035&view=diff
==============================================================================
--- felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/SimpleTerm.java (original)
+++ felix/trunk/sigil/common/osgi/src/org/apache/felix/sigil/common/osgi/SimpleTerm.java Fri Sep 11 21:16:33 2009
@@ -26,7 +26,7 @@
import java.util.Vector;
-public class SimpleTerm implements LDAPExpr
+public class SimpleTerm extends AbstractExpr
{
/**
@@ -297,12 +297,6 @@
}
- public void visit( ExprVisitor v )
- {
- v.visitSimple( this );
- }
-
-
public LDAPExpr[] getChildren()
{
return CHILDLESS;