Update of /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8671/com/sun/xacml/cond Modified Files: AbsFunction.java AddFunction.java BagFunction.java ComparisonFunction.java ConditionBagFunction.java ConditionSetFunction.java DateMathFunction.java DivideFunction.java EqualFunction.java FloorFunction.java GeneralBagFunction.java GeneralSetFunction.java HigherOrderFunction.java LogicalFunction.java MapFunction.java MatchFunction.java ModFunction.java MultiplyFunction.java NOfFunction.java NotFunction.java NumericConvertFunction.java RoundFunction.java SetFunction.java StandardFunctionFactory.java StringNormalizeFunction.java SubtractFunction.java Log Message: functions report supported identifiers and clusters use these sets Index: LogicalFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/LogicalFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** LogicalFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- LogicalFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 104,107 **** --- 104,122 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_OR); + set.add(NAME_AND); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: ConditionSetFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/ConditionSetFunction.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ConditionSetFunction.java 17 Mar 2004 18:03:38 -0000 1.2 --- ConditionSetFunction.java 18 Mar 2004 21:13:09 -0000 1.3 *************** *** 158,161 **** --- 158,181 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + for (int i = 0; i < simpleTypes.length; i++) { + String baseName = FunctionBase.FUNCTION_NS + simpleTypes[i]; + + set.add(baseName + NAME_BASE_AT_LEAST_ONE_MEMBER_OF); + set.add(baseName + NAME_BASE_SUBSET); + set.add(baseName + NAME_BASE_SET_EQUALS); + } + + return set; + } + + /** * Evaluates the function, using the specified parameters. * Index: NumericConvertFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/NumericConvertFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** NumericConvertFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- NumericConvertFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 106,109 **** --- 106,124 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_DOUBLE_TO_INTEGER); + set.add(NAME_INTEGER_TO_DOUBLE); + + return set; + } + + /** * Private helper that returns the type used for the given standard * function. Note that this doesn't check on the return value since the Index: GeneralSetFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/GeneralSetFunction.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** GeneralSetFunction.java 17 Mar 2004 18:03:38 -0000 1.2 --- GeneralSetFunction.java 18 Mar 2004 21:13:09 -0000 1.3 *************** *** 149,152 **** --- 149,171 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + for (int i = 0; i < simpleTypes.length; i++) { + String baseName = FunctionBase.FUNCTION_NS + simpleTypes[i]; + + set.add(baseName + NAME_BASE_INTERSECTION); + set.add(baseName + NAME_BASE_UNION); + } + + return set; + } + + /** * Evaluates the function, using the specified parameters. * Index: AddFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/AddFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** AddFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- AddFunction.java 18 Mar 2004 21:13:08 -0000 1.4 *************** *** 118,121 **** --- 118,136 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_INTEGER_ADD); + set.add(NAME_DOUBLE_ADD); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: RoundFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/RoundFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** RoundFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- RoundFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 83,86 **** --- 83,100 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_ROUND); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: DateMathFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/DateMathFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** DateMathFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- DateMathFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 226,229 **** --- 226,248 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_DATETIME_ADD_DAYTIMEDURATION); + set.add(NAME_DATETIME_SUBTRACT_DAYTIMEDURATION); + set.add(NAME_DATETIME_ADD_YEARMONTHDURATION); + set.add(NAME_DATETIME_SUBTRACT_YEARMONTHDURATION); + set.add(NAME_DATE_ADD_YEARMONTHDURATION); + set.add(NAME_DATE_SUBTRACT_YEARMONTHDURATION); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: BagFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/BagFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** BagFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- BagFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 52,55 **** --- 52,58 ---- import com.sun.xacml.attr.YearMonthDurationAttribute; + import java.util.HashSet; + import java.util.Set; + /** *************** *** 249,251 **** --- 252,269 ---- } + /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.addAll(ConditionBagFunction.getSupportedIdentifiers()); + set.addAll(GeneralBagFunction.getSupportedIdentifiers()); + + return set; + } + } Index: MultiplyFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/MultiplyFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** MultiplyFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- MultiplyFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 118,121 **** --- 118,136 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_INTEGER_MULTIPLY); + set.add(NAME_DOUBLE_MULTIPLY); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: NotFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/NotFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** NotFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- NotFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 81,84 **** --- 81,98 ---- + functionName); } + + /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_NOT); + + return set; + } /** Index: ComparisonFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/ComparisonFunction.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** ComparisonFunction.java 17 Mar 2004 18:03:38 -0000 1.4 --- ComparisonFunction.java 18 Mar 2004 21:13:09 -0000 1.5 *************** *** 373,376 **** --- 373,413 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_INTEGER_GREATER_THAN); + set.add(NAME_INTEGER_GREATER_THAN_OR_EQUAL); + set.add(NAME_INTEGER_LESS_THAN); + set.add(NAME_INTEGER_LESS_THAN_OR_EQUAL); + set.add(NAME_DOUBLE_GREATER_THAN); + set.add(NAME_DOUBLE_GREATER_THAN_OR_EQUAL); + set.add(NAME_DOUBLE_LESS_THAN); + set.add(NAME_DOUBLE_LESS_THAN_OR_EQUAL); + set.add(NAME_STRING_GREATER_THAN); + set.add(NAME_STRING_GREATER_THAN_OR_EQUAL); + set.add(NAME_STRING_LESS_THAN); + set.add(NAME_STRING_LESS_THAN_OR_EQUAL); + set.add(NAME_TIME_GREATER_THAN); + set.add(NAME_TIME_GREATER_THAN_OR_EQUAL); + set.add(NAME_TIME_LESS_THAN); + set.add(NAME_TIME_LESS_THAN_OR_EQUAL); + set.add(NAME_DATETIME_GREATER_THAN); + set.add(NAME_DATETIME_GREATER_THAN_OR_EQUAL); + set.add(NAME_DATETIME_LESS_THAN); + set.add(NAME_DATETIME_LESS_THAN_OR_EQUAL); + set.add(NAME_DATE_GREATER_THAN); + set.add(NAME_DATE_GREATER_THAN_OR_EQUAL); + set.add(NAME_DATE_LESS_THAN); + set.add(NAME_DATE_LESS_THAN_OR_EQUAL); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: EqualFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/EqualFunction.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** EqualFunction.java 17 Mar 2004 18:03:38 -0000 1.4 --- EqualFunction.java 18 Mar 2004 21:13:09 -0000 1.5 *************** *** 251,254 **** --- 251,281 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_STRING_EQUAL); + set.add(NAME_BOOLEAN_EQUAL); + set.add(NAME_INTEGER_EQUAL); + set.add(NAME_DOUBLE_EQUAL); + set.add(NAME_DATE_EQUAL); + set.add(NAME_TIME_EQUAL); + set.add(NAME_DATETIME_EQUAL); + set.add(NAME_DAYTIME_DURATION_EQUAL); + set.add(NAME_YEARMONTH_DURATION_EQUAL); + set.add(NAME_ANYURI_EQUAL); + set.add(NAME_X500NAME_EQUAL); + set.add(NAME_RFC822NAME_EQUAL); + set.add(NAME_HEXBINARY_EQUAL); + set.add(NAME_BASE64BINARY_EQUAL); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: StringNormalizeFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/StringNormalizeFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** StringNormalizeFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- StringNormalizeFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 105,108 **** --- 105,123 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_STRING_NORMALIZE_SPACE); + set.add(NAME_STRING_NORMALIZE_TO_LOWER_CASE); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: FloorFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/FloorFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** FloorFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- FloorFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 84,87 **** --- 84,101 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_FLOOR); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: NOfFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/NOfFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** NOfFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- NOfFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 92,95 **** --- 92,109 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_N_OF); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: SetFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/SetFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** SetFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- SetFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 56,59 **** --- 56,62 ---- import com.sun.xacml.attr.YearMonthDurationAttribute; + import java.util.HashSet; + import java.util.Set; + /** *************** *** 255,257 **** --- 258,275 ---- } + /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.addAll(ConditionSetFunction.getSupportedIdentifiers()); + set.addAll(GeneralSetFunction.getSupportedIdentifiers()); + + return set; + } + } Index: SubtractFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/SubtractFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** SubtractFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- SubtractFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 118,121 **** --- 118,136 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_INTEGER_SUBTRACT); + set.add(NAME_DOUBLE_SUBTRACT); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: DivideFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/DivideFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** DivideFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- DivideFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 118,121 **** --- 118,136 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_INTEGER_DIVIDE); + set.add(NAME_DOUBLE_DIVIDE); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: HigherOrderFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/HigherOrderFunction.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** HigherOrderFunction.java 17 Mar 2004 18:03:38 -0000 1.4 --- HigherOrderFunction.java 18 Mar 2004 21:13:09 -0000 1.5 *************** *** 179,182 **** --- 179,201 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_ANY_OF); + set.add(NAME_ALL_OF); + set.add(NAME_ANY_OF_ANY); + set.add(NAME_ALL_OF_ANY); + set.add(NAME_ANY_OF_ALL); + set.add(NAME_ALL_OF_ALL); + + return set; + } + + /** * Returns the full identifier of this function, as known by the factories. * Index: ModFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/ModFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ModFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- ModFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 82,85 **** --- 82,99 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_INTEGER_MOD); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: MatchFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/MatchFunction.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** MatchFunction.java 17 Mar 2004 18:03:38 -0000 1.4 --- MatchFunction.java 18 Mar 2004 21:13:09 -0000 1.5 *************** *** 147,150 **** --- 147,166 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_REGEXP_STRING_MATCH); + set.add(NAME_X500NAME_MATCH); + set.add(NAME_RFC822NAME_MATCH); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: GeneralBagFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/GeneralBagFunction.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** GeneralBagFunction.java 17 Mar 2004 18:03:38 -0000 1.2 --- GeneralBagFunction.java 18 Mar 2004 21:13:09 -0000 1.3 *************** *** 222,225 **** --- 222,245 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + for (int i = 0; i < simpleTypes.length; i++) { + String baseName = FunctionBase.FUNCTION_NS + simpleTypes[i]; + + set.add(baseName + NAME_BASE_ONE_AND_ONLY); + set.add(baseName + NAME_BASE_BAG_SIZE); + set.add(baseName + NAME_BASE_BAG); + } + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: AbsFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/AbsFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** AbsFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- AbsFunction.java 18 Mar 2004 21:13:08 -0000 1.4 *************** *** 118,121 **** --- 118,136 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_INTEGER_ABS); + set.add(NAME_DOUBLE_ABS); + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: StandardFunctionFactory.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/StandardFunctionFactory.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** StandardFunctionFactory.java 17 Mar 2004 18:03:38 -0000 1.3 --- StandardFunctionFactory.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 175,179 **** try { addAbstractFunction(new MapFunctionProxy(), ! new URI(MapFunction.NAME)); } catch (URISyntaxException e) { // this shouldn't ever happen, but just in case... --- 175,179 ---- try { addAbstractFunction(new MapFunctionProxy(), ! new URI(MapFunction.NAME_MAP)); } catch (URISyntaxException e) { // this shouldn't ever happen, but just in case... Index: ConditionBagFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/ConditionBagFunction.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ConditionBagFunction.java 17 Mar 2004 18:03:38 -0000 1.2 --- ConditionBagFunction.java 18 Mar 2004 21:13:09 -0000 1.3 *************** *** 119,122 **** --- 119,139 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + for (int i = 0; i < simpleTypes.length; i++) { + set.add(FunctionBase.FUNCTION_NS + simpleTypes[i] + + NAME_BASE_IS_IN); + } + + return set; + } + + /** * Evaluate the function, using the specified parameters. * Index: MapFunction.java =================================================================== RCS file: /cvsroot/sunxacml/sunxacml/com/sun/xacml/cond/MapFunction.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** MapFunction.java 17 Mar 2004 18:03:38 -0000 1.3 --- MapFunction.java 18 Mar 2004 21:13:09 -0000 1.4 *************** *** 48,54 **** --- 48,56 ---- import java.util.ArrayList; + import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Map; + import java.util.Set; import org.w3c.dom.Node; *************** *** 68,72 **** * The name of this function */ ! public static final String NAME = FunctionBase.FUNCTION_NS + "map"; // the return type for this instance --- 70,74 ---- * The name of this function */ ! public static final String NAME_MAP = FunctionBase.FUNCTION_NS + "map"; // the return type for this instance *************** *** 81,85 **** static { try { ! identifier = new URI(NAME); } catch (Exception e) { earlyException = new IllegalArgumentException(); --- 83,87 ---- static { try { ! identifier = new URI(NAME_MAP); } catch (Exception e) { earlyException = new IllegalArgumentException(); *************** *** 98,101 **** --- 100,117 ---- /** + * Returns a <code>Set</code> containing all the function identifiers + * supported by this class. + * + * @return a <code>Set</code> of <code>String</code>s + */ + public static Set getSupportedIdentifiers() { + Set set = new HashSet(); + + set.add(NAME_MAP); + + return set; + } + + /** * Creates a new instance of the map function using the data found in * the DOM node provided. This is called by a proxy when the factory |