User: ejort
Date: 02/03/24 03:50:26
Modified: src/main/javax/management Tag: BranchMX_1_0 AndQueryExp.java
AnySubStringQueryExp.java AttributeValueExp.java
BetweenQueryExp.java BinaryComparisonQueryExp.java
BinaryOpValueExp.java ClassAttributeValueExp.java
FinalSubStringQueryExp.java InQueryExp.java
InitialSubStringQueryExp.java MatchQueryExp.java
NotQueryExp.java NumberValueExp.java
OrQueryExp.java QualifiedAttributeValueExp.java
QueryEval.java QueryExpSupport.java
StringValueExp.java ValueExpSupport.java
Log:
Made queries threadsafe, better but still incomplete monitor tests
Revision Changes Path
No revision
No revision
1.1.2.2 +6 -8 jmx/src/main/javax/management/AndQueryExp.java
Index: AndQueryExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/AndQueryExp.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- AndQueryExp.java 16 Mar 2002 12:38:50 -0000 1.1.2.1
+++ AndQueryExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.2
@@ -18,12 +18,16 @@
* <ul>
* <li>Fix the human readable expression
* </ul>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1.2.1 $
+ * @version $Revision: 1.1.2.2 $
*/
/*package*/ class AndQueryExp
- implements QueryExp
+ extends QueryExpSupport
{
// Constants ---------------------------------------------------
@@ -66,12 +70,6 @@
InvalidApplicationException
{
return first.apply(name) && second.apply(name);
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- first.setMBeanServer(server);
- second.setMBeanServer(server);
}
// Object overrides --------------------------------------------
1.1.2.1 +7 -7 jmx/src/main/javax/management/AnySubStringQueryExp.java
Index: AnySubStringQueryExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/AnySubStringQueryExp.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -r1.1 -r1.1.2.1
--- AnySubStringQueryExp.java 22 Feb 2002 16:44:32 -0000 1.1
+++ AnySubStringQueryExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.1
@@ -12,12 +12,18 @@
* An Any Substring Query Expression.<p>
*
* Returns true when an attribute value contains the string expression.
+ *
+ * <p><b>Revisions:</b>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.1.2.1 $
*/
/*package*/ class AnySubStringQueryExp
- implements QueryExp
+ extends QueryExpSupport
{
// Constants ---------------------------------------------------
@@ -68,12 +74,6 @@
}
// REVIEW: correct?
return false;
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- attr.setMBeanServer(server);
- string.setMBeanServer(server);
}
// Object overrides --------------------------------------------
1.2.2.1 +9 -24 jmx/src/main/javax/management/AttributeValueExp.java
Index: AttributeValueExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/AttributeValueExp.java,v
retrieving revision 1.2
retrieving revision 1.2.2.1
diff -u -r1.2 -r1.2.2.1
--- AttributeValueExp.java 22 Feb 2002 16:44:32 -0000 1.2
+++ AttributeValueExp.java 24 Mar 2002 11:50:26 -0000 1.2.2.1
@@ -8,15 +8,18 @@
/**
* A String that is an arguement to a query.<p>
- *
- * There is some duplication of implementation because of the poor
- * design.
*
+ * <p><b>Revisions:</b>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
+ *
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.2 $
+ * @version $Revision: 1.2.2.1 $
*/
public class AttributeValueExp
- implements ValueExp
+ extends ValueExpSupport
{
// Constants ---------------------------------------------------
@@ -27,11 +30,6 @@
*/
private String value;
- /**
- * The MBean server for this expression
- */
- private MBeanServer server;
-
// Static -----------------------------------------------------
// Constructors ------------------------------------------------
@@ -84,11 +82,6 @@
throw new BadAttributeValueExpException(object);
}
- public void setMBeanServer(MBeanServer server)
- {
- this.server = server;
- }
-
// Object overrides --------------------------------------------
public String toString()
@@ -108,7 +101,7 @@
{
try
{
- return server.getAttribute(name, value);
+ return getMBeanServer().getAttribute(name, value);
}
catch (Exception e)
{
@@ -118,14 +111,6 @@
}
// Package Private ---------------------------------------------
-
- /**
- * Get the server.
- */
- MBeanServer getServer()
- {
- return server;
- }
// Private -----------------------------------------------------
1.1.2.2 +6 -9 jmx/src/main/javax/management/BetweenQueryExp.java
Index: BetweenQueryExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/BetweenQueryExp.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- BetweenQueryExp.java 16 Mar 2002 12:38:50 -0000 1.1.2.1
+++ BetweenQueryExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.2
@@ -19,12 +19,16 @@
* <ul>
* <li>Fix the human readable expression
* </ul>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1.2.1 $
+ * @version $Revision: 1.1.2.2 $
*/
/*package*/ class BetweenQueryExp
- implements QueryExp
+ extends QueryExpSupport
{
// Constants ---------------------------------------------------
@@ -101,13 +105,6 @@
// REVIEW: correct? Does this apply to boolean :-)
return false;
}
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- test.setMBeanServer(server);
- lower.setMBeanServer(server);
- upper.setMBeanServer(server);
}
// Object overrides --------------------------------------------
1.1.2.2 +5 -7 jmx/src/main/javax/management/BinaryComparisonQueryExp.java
Index: BinaryComparisonQueryExp.java
===================================================================
RCS file:
/cvsroot/jboss/jmx/src/main/javax/management/BinaryComparisonQueryExp.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- BinaryComparisonQueryExp.java 16 Mar 2002 12:38:50 -0000 1.1.2.1
+++ BinaryComparisonQueryExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.2
@@ -14,9 +14,13 @@
* <ul>
* <li>Added human readable string representation.
* </ul>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1.2.1 $
+ * @version $Revision: 1.1.2.2 $
*/
/*package*/ class BinaryComparisonQueryExp
extends QueryExpSupport
@@ -125,12 +129,6 @@
}
// Review What happens now?
throw new BadBinaryOpValueExpException(testFirst);
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- first.setMBeanServer(server);
- second.setMBeanServer(server);
}
// Object overrides --------------------------------------------
1.2.2.2 +38 -19 jmx/src/main/javax/management/BinaryOpValueExp.java
Index: BinaryOpValueExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/BinaryOpValueExp.java,v
retrieving revision 1.2.2.1
retrieving revision 1.2.2.2
diff -u -r1.2.2.1 -r1.2.2.2
--- BinaryOpValueExp.java 16 Mar 2002 12:38:50 -0000 1.2.2.1
+++ BinaryOpValueExp.java 24 Mar 2002 11:50:26 -0000 1.2.2.2
@@ -14,9 +14,13 @@
* <ul>
* <li>Added human readable string representation.
* </ul>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.2.2.1 $
+ * @version $Revision: 1.2.2.2 $
*/
/*package*/ class BinaryOpValueExp
extends ValueExpSupport
@@ -73,20 +77,41 @@
if (testFirst instanceof NumberValueExp)
{
- switch (operation)
+ if (((NumberValueExp)testFirst).isInteger())
{
- case Query.PLUS:
- return Query.value(((NumberValueExp)testFirst).getDoubleValue() +
- ((NumberValueExp)testSecond).getDoubleValue());
- case Query.MINUS:
- return Query.value(((NumberValueExp)testFirst).getDoubleValue() -
- ((NumberValueExp)testSecond).getDoubleValue());
- case Query.TIMES:
- return Query.value(((NumberValueExp)testFirst).getDoubleValue() *
- ((NumberValueExp)testSecond).getDoubleValue());
- case Query.DIV:
- return Query.value(((NumberValueExp)testFirst).getDoubleValue() /
+ switch (operation)
+ {
+ case Query.PLUS:
+ return Query.value(((NumberValueExp)testFirst).getLongValue() +
+ ((NumberValueExp)testSecond).getLongValue());
+ case Query.MINUS:
+ return Query.value(((NumberValueExp)testFirst).getLongValue() -
+ ((NumberValueExp)testSecond).getLongValue());
+ case Query.TIMES:
+ return Query.value(((NumberValueExp)testFirst).getLongValue() *
+ ((NumberValueExp)testSecond).getLongValue());
+ case Query.DIV:
+ return Query.value(((NumberValueExp)testFirst).getLongValue() /
+ ((NumberValueExp)testSecond).getLongValue());
+ }
+ }
+ else
+ {
+ switch (operation)
+ {
+ case Query.PLUS:
+ return Query.value(((NumberValueExp)testFirst).getDoubleValue() +
+ ((NumberValueExp)testSecond).getDoubleValue());
+ case Query.MINUS:
+ return Query.value(((NumberValueExp)testFirst).getDoubleValue() -
+ ((NumberValueExp)testSecond).getDoubleValue());
+ case Query.TIMES:
+ return Query.value(((NumberValueExp)testFirst).getDoubleValue() *
+ ((NumberValueExp)testSecond).getDoubleValue());
+ case Query.DIV:
+ return Query.value(((NumberValueExp)testFirst).getDoubleValue() /
((NumberValueExp)testSecond).getDoubleValue());
+ }
}
}
else if (testFirst instanceof StringValueExp)
@@ -102,12 +127,6 @@
}
// Review What happens now?
throw new BadBinaryOpValueExpException(testFirst);
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- first.setMBeanServer(server);
- second.setMBeanServer(server);
}
// Object overrides --------------------------------------------
1.1.2.1 +8 -2 jmx/src/main/javax/management/ClassAttributeValueExp.java
Index: ClassAttributeValueExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/ClassAttributeValueExp.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -r1.1 -r1.1.2.1
--- ClassAttributeValueExp.java 22 Feb 2002 16:44:32 -0000 1.1
+++ ClassAttributeValueExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.1
@@ -7,10 +7,16 @@
package javax.management;
/**
- * What is this?
+ * Get the class name of the mbean
+ *
+ * <p><b>Revisions:</b>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.1.2.1 $
*/
/*package*/ class ClassAttributeValueExp
extends AttributeValueExp
@@ -44,7 +50,7 @@
{
try
{
- ObjectInstance instance = getServer().getObjectInstance(name);
+ ObjectInstance instance = getMBeanServer().getObjectInstance(name);
return Query.value(instance.getClassName());
}
catch (Exception e)
1.1.2.1 +6 -7 jmx/src/main/javax/management/FinalSubStringQueryExp.java
Index: FinalSubStringQueryExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/FinalSubStringQueryExp.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -r1.1 -r1.1.2.1
--- FinalSubStringQueryExp.java 22 Feb 2002 16:44:32 -0000 1.1
+++ FinalSubStringQueryExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.1
@@ -12,12 +12,17 @@
* A Final Substring Query Expression.<p>
*
* Returns true when an attribute value ends with the string expression.
+ *
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.1.2.1 $
*/
/*package*/ class FinalSubStringQueryExp
- implements QueryExp
+ extends QueryExpSupport
{
// Constants ---------------------------------------------------
@@ -68,12 +73,6 @@
}
// REVIEW: correct?
return false;
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- attr.setMBeanServer(server);
- string.setMBeanServer(server);
}
// Object overrides --------------------------------------------
1.1.2.2 +6 -9 jmx/src/main/javax/management/InQueryExp.java
Index: InQueryExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/InQueryExp.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- InQueryExp.java 16 Mar 2002 12:38:50 -0000 1.1.2.1
+++ InQueryExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.2
@@ -20,12 +20,16 @@
* <ul>
* <li>Don't put ; on the end of if statements :-)
* </ul>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1.2.1 $
+ * @version $Revision: 1.1.2.2 $
*/
/*package*/ class InQueryExp
- implements QueryExp
+ extends QueryExpSupport
{
// Constants ---------------------------------------------------
@@ -96,13 +100,6 @@
}
// No match
return false;
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- test.setMBeanServer(server);
- for (int i = 0; i < list.length; i++)
- list[i].setMBeanServer(server);
}
// Object overrides --------------------------------------------
1.1.2.1 +7 -7 jmx/src/main/javax/management/InitialSubStringQueryExp.java
Index: InitialSubStringQueryExp.java
===================================================================
RCS file:
/cvsroot/jboss/jmx/src/main/javax/management/InitialSubStringQueryExp.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -r1.1 -r1.1.2.1
--- InitialSubStringQueryExp.java 22 Feb 2002 16:44:32 -0000 1.1
+++ InitialSubStringQueryExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.1
@@ -12,12 +12,18 @@
* An Initial Substring Query Expression.<p>
*
* Returns true when an attribute value starts with the string expression.
+ *
+ * <p><b>Revisions:</b>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.1.2.1 $
*/
/*package*/ class InitialSubStringQueryExp
- implements QueryExp
+ extends QueryExpSupport
{
// Constants ---------------------------------------------------
@@ -68,12 +74,6 @@
}
// REVIEW: correct?
return false;
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- attr.setMBeanServer(server);
- string.setMBeanServer(server);
}
// Object overrides --------------------------------------------
1.2.2.2 +6 -8 jmx/src/main/javax/management/MatchQueryExp.java
Index: MatchQueryExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/MatchQueryExp.java,v
retrieving revision 1.2.2.1
retrieving revision 1.2.2.2
diff -u -r1.2.2.1 -r1.2.2.2
--- MatchQueryExp.java 16 Mar 2002 12:38:50 -0000 1.2.2.1
+++ MatchQueryExp.java 24 Mar 2002 11:50:26 -0000 1.2.2.2
@@ -18,12 +18,16 @@
* <ul>
* <li>Fixed most of the escaping
* </ul>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.2.2.1 $
+ * @version $Revision: 1.2.2.2 $
*/
/*package*/ class MatchQueryExp
- implements QueryExp
+ extends QueryExpSupport
{
// Constants ---------------------------------------------------
@@ -132,12 +136,6 @@
}
// Correct?
return false;
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- attr.setMBeanServer(server);
- string.setMBeanServer(server);
}
// Object overrides --------------------------------------------
1.1.2.2 +6 -7 jmx/src/main/javax/management/NotQueryExp.java
Index: NotQueryExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/NotQueryExp.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- NotQueryExp.java 16 Mar 2002 12:38:50 -0000 1.1.2.1
+++ NotQueryExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.2
@@ -18,12 +18,16 @@
* <ul>
* <li>Fix the human readable expression
* </ul>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1.2.1 $
+ * @version $Revision: 1.1.2.2 $
*/
/*package*/ class NotQueryExp
- implements QueryExp
+ extends QueryExpSupport
{
// Constants ---------------------------------------------------
@@ -60,11 +64,6 @@
InvalidApplicationException
{
return !expression.apply(name);
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- expression.setMBeanServer(server);
}
// Object overrides --------------------------------------------
1.2.2.1 +19 -2 jmx/src/main/javax/management/NumberValueExp.java
Index: NumberValueExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/NumberValueExp.java,v
retrieving revision 1.2
retrieving revision 1.2.2.1
diff -u -r1.2 -r1.2.2.1
--- NumberValueExp.java 22 Feb 2002 16:44:32 -0000 1.2
+++ NumberValueExp.java 24 Mar 2002 11:50:26 -0000 1.2.2.1
@@ -10,7 +10,7 @@
* A Number that is an arguement to a query.<p>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.2 $
+ * @version $Revision: 1.2.2.1 $
*/
/*package*/ class NumberValueExp
extends SingleValueExpSupport
@@ -36,7 +36,24 @@
// Public ------------------------------------------------------
/**
- * Get the value of this number
+ * Test whether the type is integer
+ */
+ public boolean isInteger()
+ {
+ Object value = getValue();
+ return value instanceof Integer || value instanceof Long;
+ }
+
+ /**
+ * Get the value of this number (integers)
+ */
+ public double getLongValue()
+ {
+ return ((Number)getValue()).longValue();
+ }
+
+ /**
+ * Get the value of this number (floating)
*/
public double getDoubleValue()
{
1.1.2.2 +6 -8 jmx/src/main/javax/management/OrQueryExp.java
Index: OrQueryExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/OrQueryExp.java,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -r1.1.2.1 -r1.1.2.2
--- OrQueryExp.java 16 Mar 2002 12:38:50 -0000 1.1.2.1
+++ OrQueryExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.2
@@ -18,12 +18,16 @@
* <ul>
* <li>Fix the human readable expression
* </ul>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1.2.1 $
+ * @version $Revision: 1.1.2.2 $
*/
/*package*/ class OrQueryExp
- implements QueryExp
+ extends QueryExpSupport
{
// Constants ---------------------------------------------------
@@ -67,12 +71,6 @@
InvalidApplicationException
{
return first.apply(name) || second.apply(name);
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- first.setMBeanServer(server);
- second.setMBeanServer(server);
}
// Object overrides --------------------------------------------
1.1.2.1 +1 -1 jmx/src/main/javax/management/QualifiedAttributeValueExp.java
Index: QualifiedAttributeValueExp.java
===================================================================
RCS file:
/cvsroot/jboss/jmx/src/main/javax/management/QualifiedAttributeValueExp.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -r1.1 -r1.1.2.1
--- QualifiedAttributeValueExp.java 22 Feb 2002 16:44:32 -0000 1.1
+++ QualifiedAttributeValueExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.1
@@ -10,7 +10,7 @@
* A qualified string that is an argument to a query.<p>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.1.2.1 $
*/
/*package*/ class QualifiedAttributeValueExp
extends AttributeValueExp
@@ -53,7 +53,7 @@
{
try
{
- ObjectInstance instance = getServer().getObjectInstance(name);
+ ObjectInstance instance = getMBeanServer().getObjectInstance(name);
if (instance.getClassName().equals(className))
return super.apply(name);
}
1.1.2.1 +12 -8 jmx/src/main/javax/management/QueryEval.java
Index: QueryEval.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/QueryEval.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -r1.1 -r1.1.2.1
--- QueryEval.java 17 Feb 2002 12:41:52 -0000 1.1
+++ QueryEval.java 24 Mar 2002 11:50:26 -0000 1.1.2.1
@@ -9,13 +9,16 @@
import java.io.Serializable;
/**
- * Support for evaluting a query in the context of an MBeanServer.<p>
+ * Support for evaluting a query in the context of an MBeanServer.
*
- * This is obviously rubbish. Design and implementation shouldn't be
- * so closely bound together.
+ * <p><b>Revisions:</b>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.1.2.1 $
*/
public abstract class QueryEval
implements Serializable
@@ -24,11 +27,12 @@
// Attributes --------------------------------------------------
+ // Static ------------------------------------------------------
+
/**
- * I guess in the RI, all the implementation of queries is in
- * javax.management?
+ * The MBeanServer (one per thread)
*/
- /*package*/ MBeanServer server;
+ /*package*/ static ThreadLocal server = new ThreadLocal();
// Public ------------------------------------------------------
@@ -40,6 +44,6 @@
*/
public void setMBeanServer(MBeanServer server)
{
- this.server = server;
+ this.server.set(server);
}
}
1.1.2.1 +10 -7 jmx/src/main/javax/management/QueryExpSupport.java
Index: QueryExpSupport.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/QueryExpSupport.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -r1.1 -r1.1.2.1
--- QueryExpSupport.java 17 Feb 2002 12:41:52 -0000 1.1
+++ QueryExpSupport.java 24 Mar 2002 11:50:26 -0000 1.1.2.1
@@ -10,9 +10,15 @@
/**
* An implementation of Query expression. Apply always returns false.
+ *
+ * <p><b>Revisions:</b>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.1.2.1 $
*/
/*package*/ class QueryExpSupport
implements QueryExp
@@ -21,11 +27,6 @@
// Attributes --------------------------------------------------
- /**
- * The MBean server
- */
- protected MBeanServer server;
-
// Static ------------------------------------------------------
// Public ------------------------------------------------------
@@ -43,12 +44,14 @@
public void setMBeanServer(MBeanServer server)
{
- this.server = server;
+ QueryEval.server.set(server);
}
// X overides --------------------------------------------------
// Protected ---------------------------------------------------
+
+ // Package Private ---------------------------------------------
// Private -----------------------------------------------------
1.1.2.1 +10 -22 jmx/src/main/javax/management/StringValueExp.java
Index: StringValueExp.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/StringValueExp.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -r1.1 -r1.1.2.1
--- StringValueExp.java 17 Feb 2002 12:41:52 -0000 1.1
+++ StringValueExp.java 24 Mar 2002 11:50:26 -0000 1.1.2.1
@@ -7,16 +7,19 @@
package javax.management;
/**
- * A String that is an arguement to a query.<p>
+ * A String that is an arguement to a query.
*
- * There is some duplication of implementation because of the poor
- * design.
+ * <p><b>Revisions:</b>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.1.2.1 $
*/
public class StringValueExp
- implements ValueExp
+ extends ValueExpSupport
{
// Constants ---------------------------------------------------
@@ -27,11 +30,6 @@
*/
private String value;
- /**
- * The MBean server for this expression
- */
- private MBeanServer server;
-
// Static -----------------------------------------------------
// Constructors ------------------------------------------------
@@ -60,22 +58,12 @@
*
* @return the string value
*/
- public String getValue()
+ public String getString()
{
return value;
}
- // ValueExp Implementation -------------------------------------
-
- public ValueExp apply(ObjectName name)
- {
- return this;
- }
-
- public void setMBeanServer(MBeanServer server)
- {
- this.server = server;
- }
+ // ValueExpSupport Overrides -----------------------------------
// Object overrides --------------------------------------------
1.1.2.1 +18 -15 jmx/src/main/javax/management/ValueExpSupport.java
Index: ValueExpSupport.java
===================================================================
RCS file: /cvsroot/jboss/jmx/src/main/javax/management/ValueExpSupport.java,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -r1.1 -r1.1.2.1
--- ValueExpSupport.java 17 Feb 2002 12:41:52 -0000 1.1
+++ ValueExpSupport.java 24 Mar 2002 11:50:26 -0000 1.1.2.1
@@ -10,9 +10,15 @@
/**
* An implementation of Value expression. Apply always returns this.
+ *
+ * <p><b>Revisions:</b>
+ * <p><b>20020317 Adrian Brock:</b>
+ * <ul>
+ * <li>Make queries thread safe
+ * </ul>
*
* @author <a href="mailto:[EMAIL PROTECTED]">Adrian Brock</a>.
- * @version $Revision: 1.1 $
+ * @version $Revision: 1.1.2.1 $
*/
/*package*/ class ValueExpSupport
implements ValueExp
@@ -21,25 +27,12 @@
// Attributes --------------------------------------------------
- /**
- * The MBean server
- */
- private MBeanServer server;
-
// Static ------------------------------------------------------
// Constructor -------------------------------------------------
// Public ------------------------------------------------------
- /**
- * Get the MBean server
- */
- public Object getMBeanServer()
- {
- return server;
- }
-
// ValueExp implementation -------------------------------------
public ValueExp apply(ObjectName name)
@@ -53,12 +46,22 @@
public void setMBeanServer(MBeanServer server)
{
- this.server = server;
+ QueryEval.server.set(server);
}
// Object overrides --------------------------------------------
// Protected ---------------------------------------------------
+
+ // Package -----------------------------------------------------
+
+ /**
+ * Get the MBean server
+ */
+ /*package*/ MBeanServer getMBeanServer()
+ {
+ return (MBeanServer) QueryEval.server.get();
+ }
// Private -----------------------------------------------------
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development