Hi Neeraj, This is kinda big to accept without an ICLA in place.
Can we get an Apache ICLA from Naidu? Maybe we have one but I couldn't find it...
Thanks, Craig Begin forwarded message:
From: [EMAIL PROTECTED] Date: August 18, 2008 5:50:42 AM PDT To: [EMAIL PROTECTED]Subject: svn commit: r686743 [1/10] - in /incubator/imperius/trunk: imperius-javaspl/src/main/java/org/apache/imperius/javaspl/ imperius- splcore/src/main/antlr/org/apache/imperius/spl/parser/compiler/ imperius-splcore/src/main/java/org/apache/imperius/spl/datas...Reply-To: [email protected] Author: jneeraj Date: Mon Aug 18 05:50:36 2008 New Revision: 686743 URL: http://svn.apache.org/viewvc?rev=686743&view=rev Log: IMPERIUS 12,13 and 14 code changes submitted by Naidu Added:incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/util/Messages.java (with props) incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/util/SPLLogger2.java (with props) incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/util/messages.properties (with props)Modified:incubator/imperius/trunk/imperius-javaspl/src/main/java/org/ apache/imperius/javaspl/Java_SPLPolicyRuleProvider.java incubator/imperius/trunk/imperius-splcore/src/main/antlr/org/ apache/imperius/spl/parser/compiler/cimspl.g incubator/imperius/trunk/imperius-splcore/src/main/antlr/org/ apache/imperius/spl/parser/compiler/cimspl.tree.g incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/datastore/PolicyDataStore.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/datastore/PolicyRepository.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/datastore/impl/PolicyCache.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/datastore/impl/PolicyDataStoreImpl.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/datastore/impl/PolicyParserImpl.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/datastore/impl/PolicyRepositoryImpl.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/evaluator/impl/PolicyEvaluatorImpl.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/external/InternalClient.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/manager/impl/PolicyManagerImpl.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/compiler/IdentPrimaryTuple.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/compiler/symboltable/AnchorData.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/compiler/symboltable/MacroSymbol.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/compiler/symboltable/SPLSymbolTable.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expression/primary/ BasicCollectionExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expression/primary/CollectOperation.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expression/primary/ PostCollectExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expression/primary/PrimaryExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expression/primary/SelfExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/DoubleArgumentExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/MethodExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/MultipleArgumentExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/ QuadrupleArgumentExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/SingleArgumentExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/TimeZoneExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/TripleArgumentExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/ZeroArgumentExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Abs.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Addition.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/AllInCollection.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/AnyInCollection.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ApplyToCollection.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/AssignmentExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/AvrgInCollection.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Ceiling.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Concatenate.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ConstantExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Contains.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ContainsOnlyDigits.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ContainsOnlyLetters.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ ContainsOnlyLettersOrDigits.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/DateTimeConstant.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Division.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/EndsWith.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/EqCollections.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Equal.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Exp.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Floor.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetCurrentTime.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetDayOfMonth.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetDayOfWeek.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetDayOfWeekInMonth.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetDayOfYear.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetHour12.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetHour24.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetMillisecond.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetMinute.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetMonth.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetSecond.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetWeekOfMonth.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetWeekOfYear.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GetYear.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Greater.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/GreaterOrEqual.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/InCollection.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/IntegerConstant.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/IsAfter.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/IsBefore.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/IsWithin.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/LeftSubstring.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Less.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/LessOrEqual.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Ln.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Log10.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/LogicalAnd.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/LogicalNot.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/LogicalOr.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/LogicalXor.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/LongConstant.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/MatchesRegExp.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Max.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/MaxInCollection.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/MedianInCollection.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/MiddleSubstring.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Min.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/MinInCollection.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Mod.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/NotEqual.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Power.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Product.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ReplaceSubstring.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/RightSubstring.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Rint.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Round.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/SdInCollection.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/SquareRoot.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/StartsWith.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/StringConstant.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/StringLength.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/SubCollection.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Substring.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Subtraction.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Sum.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ToBoolean.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ToLower.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ToMilliseconds.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ToREAL32.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ToREAL64.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ToSINT16.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ToSINT32.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ToSINT64.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ToSINT8.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ToString.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/ToUpper.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/UnaryMinusExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/UnaryNotExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/UnaryPlusExpression.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Union.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/expressions/impl/Word.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/factory/ACPLParserMap.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/factory/ActionFactory.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/factory/ BuitInOperationExpressionFactory.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/factory/ExpressionFactory.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/statements/actions/impl/ AnchorMethodInvokeAction.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/statements/actions/impl/ ExtrinsicMethodInvokeAction.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/statements/actions/impl/ InvokePolicyAction.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/statements/actions/impl/SetActionBlock.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/statements/impl/DeclarationStatement.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/statements/impl/PolicyDefinition.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/util/ExpressionUtility.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/util/KeyStringToMapConvertor.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/util/TypeInfo.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/spl/parser/util/TypeResolver.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/util/SPLLogger.java incubator/imperius/trunk/imperius-splcore/src/main/java/org/ apache/imperius/util/SPLLoggerClass.javaModified: incubator/imperius/trunk/imperius-javaspl/src/main/java/ org/apache/imperius/javaspl/Java_SPLPolicyRuleProvider.javaURL: http://svn.apache.org/viewvc/incubator/imperius/trunk/imperius-javaspl/src/main/java/org/apache/imperius/javaspl/Java_SPLPolicyRuleProvider.java?rev=686743&r1=686742&r2=686743&view=diff= = = = = = = = ====================================================================== --- incubator/imperius/trunk/imperius-javaspl/src/main/java/org/ apache/imperius/javaspl/Java_SPLPolicyRuleProvider.java (original) +++ incubator/imperius/trunk/imperius-javaspl/src/main/java/org/ apache/imperius/javaspl/Java_SPLPolicyRuleProvider.java Mon Aug 18 05:50:36 2008@@ -155,8 +155,12 @@ return returnFlag; } + public void setLoggingEnabled(boolean enableOrDisable) + { + _policyManager.enableLogging(enableOrDisable); + } - public static void main(String[] args) { + public static void main(String[] args) { }Modified: incubator/imperius/trunk/imperius-splcore/src/main/antlr/ org/apache/imperius/spl/parser/compiler/cimspl.gURL: http://svn.apache.org/viewvc/incubator/imperius/trunk/imperius-splcore/src/main/antlr/org/apache/imperius/spl/parser/compiler/cimspl.g?rev=686743&r1=686742&r2=686743&view=diff= = = = = = = = ====================================================================== --- incubator/imperius/trunk/imperius-splcore/src/main/antlr/org/ apache/imperius/spl/parser/compiler/cimspl.g (original) +++ incubator/imperius/trunk/imperius-splcore/src/main/antlr/org/ apache/imperius/spl/parser/compiler/cimspl.g Mon Aug 18 05:50:36 2008@@ -17,11 +17,12 @@ * under the License. */ -// * @author Neeraj Joshi <[EMAIL PROTECTED]> +// @author Neeraj Joshi <[EMAIL PROTECTED]> - - header { - /* +header +{ + +/* * * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -37,17 +38,26 @@ * limitations under the License. */ - /** - * @author Neeraj Joshi <[EMAIL PROTECTED]> - * - */ - package org.apache.imperius.spl.parser.compiler; - } -options { +/** + * @author Neeraj Joshi <[EMAIL PROTECTED]> + * + */ + package org.apache.imperius.spl.parser.compiler; + + import java.util.List; + import java.util.ArrayList; + +} + +options +{ language=Java; } + class SPLParser extends Parser; -options { + +options +{ exportVocab=cimspl; genHashLines = true; // include line number informationASTLabelType ="org.apache.imperius.spl.parser.compiler.ASTWithLineNumber";@@ -55,192 +65,385 @@ k = 1; // uses CommonAST by default } -tokens { +tokens +{STRATEGY_DEF; IMPORT_DEF; DECL_DEF; CONSTANT_DEFN; MACRO_DEFN; POLICY_DEF; CONDITION_DEF;- POLICY_GRP_DEF; DECISION_DEF; TYPE; ARGUMENTS; ARG_DEF; - EXPR; ELIST; METHOD_CALL; UNARY_MINUS; QUALIFIER;- PARAMETERS; PARAMETER_DEF; UNARY_PLUS; ARRAY_DECLARATOR; INDEX_OP; COLLECT_OP ;ASSOCIATION;- ACTIONBLOCK; COLLECT_CALL ; UNARY_NOT;BASICCOLLECTION_OP; - - - -+ POLICY_GRP_DEF; DECISION_DEF; TYPE; ARGUMENTS; ARG_DEF; EXPR; ELIST; METHOD_CALL; + UNARY_MINUS; QUALIFIER; PARAMETERS; PARAMETER_DEF; UNARY_PLUS; ARRAY_DECLARATOR; INDEX_OP; + COLLECT_OP ;ASSOCIATION; ACTIONBLOCK; COLLECT_CALL ; UNARY_NOT;BASICCOLLECTION_OP;} +{ + private List errorList = null; + + public List getErrorList() + { + return errorList; + } +} splpolicy : + { + if(errorList == null) + errorList = new ArrayList(); + }(importstatement)+ strategystatement declarationstatement (policystatement)+; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} importstatement :// i:"Import"^ {#i.setType(IMPORT_DEF);} IDENT (DOT! IDENT)* (COMMA! IDENT (DOT! IDENT)*)* (expression)? SEMI! i:"Import"^ {#i.setType(IMPORT_DEF);}(qualifier)? "Class"! IDENT (DOT! IDENT)* (identList)? (expression)? SEMI!-; +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} qualifier : q:"Qualifier"^ {#q.setType(QUALIFIER);} IDENT ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} identList : c:COLON^ IDENT (COMMA! IDENT)* ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} strategystatement :- s:"Strategy"^ {#s.setType(STRATEGY_DEF);} ("Execute_All_Applicable" | "Execute_First_Applicable") SEMI! + s:"Strategy"^ {#s.setType(STRATEGY_DEF);}("Execute_All_Applicable" | "Execute_First_Applicable") SEMI!; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} declarationstatement :-(d:"Declaration"^ {#d.setType(DECL_DEF);} LCURLY! ((constantDefinitions) | (macroDeclarations))* RCURLY! )?- ;+ (d:"Declaration"^ {#d.setType(DECL_DEF);} LCURLY! ((constantDefinitions) | (macroDeclarations))* RCURLY! )?+; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} constantDefinitions ! : - id:IDENT v:varInitializer SEMI! - {#constantDefinitions = #(#[CONSTANT_DEFN,"CONSTANT_DEFN"],id,v);} - + id:IDENT v:varInitializer SEMI! + {#constantDefinitions = #(#[CONSTANT_DEFN,"CONSTANT_DEFN"],id,v);} ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} varInitializer : - ( ASSIGN^ expression )? + ( ASSIGN^ expression )? ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} macroDeclarations !: - "Macro"! LCURLY! m:macrodef RCURLY! - {#macroDeclarations = #(#[MACRO_DEFN,"MACRO"],m);} + "Macro"! LCURLY! m:macrodef RCURLY! + {#macroDeclarations = #(#[MACRO_DEFN,"MACRO"],m);} ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + macrodef : - "Name"^ ASSIGN! id:IDENT SEMI! - "type"! ASSIGN! splType SEMI! - argumentList - "procedure"! ASSIGN! expression - ; + "Name"^ ASSIGN! id:IDENT SEMI! + "type"! ASSIGN! splType SEMI! + argumentList + "procedure"! ASSIGN! expression +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + argumentList : - ("argument"! ASSIGN! argument (COMMA! argument)* SEMI!)? - {#argumentList = #(#[ARGUMENTS,"ARGUMENTS"], - #argumentList);} + ("argument"! ASSIGN! argument (COMMA! argument)* SEMI!)? + {#argumentList = #(#[ARGUMENTS,"ARGUMENTS"], #argumentList);} ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} argument ! : - id:IDENT COLON! c:splType- {#argument = #(#[ARG_DEF,"ARG_DEF"], #([TYPE,"TYPE"],c), id);}+ id:IDENT COLON! c:splType + {#argument = #(#[ARG_DEF,"ARG_DEF"], #([TYPE,"TYPE"],c), id);} ; - +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} policystatement : - (policydef | policyGroup) SEMI! + (policydef | policyGroup) SEMI! ; - +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} policydef :- p:"Policy"^ {#p.setType(POLICY_DEF);} LCURLY! declarationstatement conditionstatement decision RCURLY! COLON! priority + p:"Policy"^ {#p.setType(POLICY_DEF);} LCURLY! declarationstatement conditionstatement decision RCURLY! COLON! priority; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} conditionstatement :- (c:"Condition"^ {#c.setType(CONDITION_DEF);} LCURLY! expression RCURLY!)? + (c:"Condition"^ {#c.setType(CONDITION_DEF);} LCURLY! expression RCURLY!)?; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + decision :- d:"Decision"^ {#d.setType(DECISION_DEF);} LCURLY! actionBlock RCURLY! + d:"Decision"^ {#d.setType(DECISION_DEF);} LCURLY! actionBlock RCURLY!; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} priority : - NUM_INT + NUM_INT ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + expression : - assignmentExpression - {#expression = #(#[EXPR,"EXPR"],#expression);} + assignmentExpression + {#expression = #(#[EXPR,"EXPR"],#expression);} ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} exprList : - expression (COMMA! expression)* - {#exprList = #(#[ELIST,"ELIST"], exprList);} + expression (COMMA! expression)* + {#exprList = #(#[ELIST,"ELIST"], exprList);} ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} assignmentExpression : - conditionalExpression - ( - ASSIGN^ assignmentExpression - )? -; - + conditionalExpression + ( + ASSIGN^ assignmentExpression + )? +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} conditionalExpression : - logicalOrexpression + logicalOrexpression ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + logicalOrexpression : - logicalAndExpression (LOR^ logicalAndExpression)* + logicalAndExpression (LOR^ logicalAndExpression)* ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} logicalAndExpression : - exclusiveOrExpression (LAND^ exclusiveOrExpression)* + exclusiveOrExpression (LAND^ exclusiveOrExpression)* ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} exclusiveOrExpression : - equalityExpression (BXOR^ equalityExpression)* + equalityExpression (BXOR^ equalityExpression)* ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} equalityExpression :- relationalExpression ((NOT_EQUAL^ | EQUAL^) relationalExpression)*+ relationalExpression ((NOT_EQUAL^ | EQUAL^) relationalExpression)* ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} relationalExpression :- additiveExpression (( LT^ | GT^ | LE^ | GE^ ) additiveExpression)*+ additiveExpression (( LT^ | GT^ | LE^ | GE^ ) additiveExpression)* ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} additiveExpression :- multiplicativeExpression ((PLUS^ | MINUS^) multiplicativeExpression)* + multiplicativeExpression ((PLUS^ | MINUS^) multiplicativeExpression)*; - +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} // multiplication/division (level 2) multiplicativeExpression : - - unaryExpression ((STAR^ | DIV^ ) unaryExpression)* + unaryExpression ((STAR^ | DIV^ ) unaryExpression)* ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} unaryExpression :- (MINUS^ {#MINUS.setType(UNARY_MINUS);} unaryExpression )| (PLUS^ {#PLUS.setType(UNARY_PLUS);} unaryExpression) | (unaryExpressionNotPlusMinus) + (MINUS^ {#MINUS.setType(UNARY_MINUS);} unaryExpression )| (PLUS^ {#PLUS.setType(UNARY_PLUS);} unaryExpression) | (unaryExpressionNotPlusMinus); +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} unaryExpressionNotPlusMinus :- (LNOT^ {#LNOT.setType(UNARY_NOT);} unaryExpression )| (primaryExpression) + (LNOT^ {#LNOT.setType(UNARY_NOT);} unaryExpression )| (primaryExpression); - - +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} primaryExpression :- identPrimary | constant | "true"| "false" | "Self" | (LPAREN! assignmentExpression RPAREN!) + identPrimary | constant | "true"| "false" | "Self" | (LPAREN! assignmentExpression RPAREN!); +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} identPrimary :- IDENT^ ( (DOT! IDENT (indexOp | methodCall)?)* | methodCall)- | collectOperation - | basicCollectionOp - ; + IDENT^ ( (DOT! IDENT (indexOp | methodCall)?)* | methodCall) + | collectOperation + | basicCollectionOp +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} collectOperation :- c:"collect"^ {#c.setType(COLLECT_OP);} collectmethodcall (indexOp (methodOrPropertyOrArrayForCollect)? )?- ;+ c:"collect"^ {#c.setType(COLLECT_OP);} collectmethodcall (indexOp (methodOrPropertyOrArrayForCollect)? )?+; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} collectmethodcall : - -LPAREN^ {#LPAREN.setType(COLLECT_CALL); } paramList RPAREN! -; --methodOrPropertyOrArrayForCollect : DOT! IDENT ( indexOp | methodCall)?- - ; + LPAREN^ {#LPAREN.setType(COLLECT_CALL); } paramList RPAREN! +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + +methodOrPropertyOrArrayForCollect : + DOT! IDENT ( indexOp | methodCall)? +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} - - -indexOp : lb:LBRACK^ {#lb.setType(INDEX_OP);} expression RBRACK! +indexOp : + lb:LBRACK^ {#lb.setType(INDEX_OP);} expression RBRACK! ; --basicCollectionOp : lb:LBRACK^ {#lb.setType(BASICCOLLECTION_OP);} exprList RBRACK!-; --methodCall : lp:LPAREN^ {#lp.setType(METHOD_CALL);} paramList RPAREN!- - ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + +basicCollectionOp : + lb:LBRACK^ {#lb.setType(BASICCOLLECTION_OP);} exprList RBRACK! +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + +methodCall : + lp:LPAREN^ {#lp.setType(METHOD_CALL);} paramList RPAREN! +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} constant : // DATE_TIME @@ -251,60 +454,102 @@ | NUM_FLOAT | NUM_LONG | NUM_DOUBLE - - ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +}//dateTime : NUM_INT DOT NUM_INT ( (PLUS | MINUS) NUM_INT | COLON NUM_INT)// ; paramList : - (exprList)? + (exprList)? ; - +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} actionBlock :- actionBlockExpr ( (ARROW^ | LAND^ | LOR^ | BOR^) actionBlockExpr)*- ; + actionBlockExpr ( (ARROW^ | LAND^ | LOR^ | BOR^) actionBlockExpr)* +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + actionBlockExpr : - basicActionBlock | LPAREN! actionBlock RPAREN! - ; - - + basicActionBlock | LPAREN! actionBlock RPAREN! +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + basicActionBlock :- // (IDENT | "Set" | "InvokePolicy" ) (DOT! IDENT)? (methodCall) ((EQUAL | NOT_EQUAL | GE | GT | LT | LE) constant)?- ( - // ( IDENT (DOT! IDENT (methodCall))* )- IDENT^ ( (DOT! IDENT (indexOp | methodCall)?)* | methodCall)- |- ( ("Set" | "InvokePolicy") (DOT! IDENT)? (methodCall) )- ) - ( - (EQUAL | NOT_EQUAL | GE | GT | LT | LE) constant - )?- {#basicActionBlock = #(#[ACTIONBLOCK,"ACTIONBLK"],basicActionBlock );} + // (IDENT | "Set" | "InvokePolicy" ) (DOT! IDENT)? (methodCall) ((EQUAL | NOT_EQUAL | GE | GT | LT | LE) constant)?+ ( + // ( IDENT (DOT! IDENT (methodCall))* ) + IDENT^ ( (DOT! IDENT (indexOp | methodCall)?)* | methodCall) + | + ( ("Set" | "InvokePolicy") (DOT! IDENT)? (methodCall) ) + ) + ( + (EQUAL | NOT_EQUAL | GE | GT | LT | LE) constant + )?+ {#basicActionBlock = #(#[ACTIONBLOCK,"ACTIONBLK"],basicActionBlock );}; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} policyGroup :- p:"PolicyGroup"^ {#p.setType(POLICY_GRP_DEF);} assocName LCURLY! splpolicy RCURLY! COLON! priority + p:"PolicyGroup"^ {#p.setType(POLICY_GRP_DEF);} assocName LCURLY! splpolicy RCURLY! COLON! priority; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} assocName : - COLON! IDENT^ LPAREN! IDENT COMMA! IDENT RPAREN! - {#assocName = #(#[ASSOCIATION,"ASSOC"], assocName);} - ; - + COLON! IDENT^ LPAREN! IDENT COMMA! IDENT RPAREN! + {#assocName = #(#[ASSOCIATION,"ASSOC"], assocName);} +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + splType : - basicSplTypes (LBRACK RBRACK)? - - ; + basicSplTypes (LBRACK RBRACK)? +; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} + basicSplTypes : -"Sint8" | "Sint16" | "Uint8" | "Uint16" | - "Sint32" | "Sint64" | "Uint32" | "Uint64" | + "Sint8" | "Sint16" | "Uint8" | "Uint16" | + "Sint32" | "Sint64" | "Uint32" | "Uint64" | "Real32" | "Real64" | "Boolean" | "Char16"| - "String" | "DateTime" | "Reference" + "String" | "DateTime" | "Reference" ; +exception catch [RecognitionException ex] +{ + reportError(ex); + errorList.add(ex.getMessage()); +} class SPLLexer extends Lexer;
Craig L Russell Architect, Sun Java Enterprise System http://java.sun.com/products/jdo 408 276-5638 mailto:[EMAIL PROTECTED] P.S. A good JDO? O, Gasp!
smime.p7s
Description: S/MIME cryptographic signature
