PK 8 META-INF/PK 8홾META-INF/MANIFEST.MFManifest-Version: 1.0 Ant-Version: Apache Ant 1.7.0 Created-By: 1.5.0_06-b05 (Sun Microsystems Inc.) Main-Class: demo.codeanalyzer.main.Main Class-Path: lib/tools.jar lib/config X-COMMENT: Main-Class will be added automatically by build PK 8demo/PK 8demo/codeanalyzer/PK 8demo/codeanalyzer/common/PK 8!demo/codeanalyzer/common/jaxbgen/PK 8demo/codeanalyzer/common/model/PK 8demo/codeanalyzer/common/rule/PK 8demo/codeanalyzer/common/util/PK 8demo/codeanalyzer/helper/PK 8demo/codeanalyzer/javacode/PK 8 demo/codeanalyzer/javacode/rule/PK 8demo/codeanalyzer/main/PK 8demo/codeanalyzer/processor/PK 8demo/codeanalyzer/scanner/PK 8 demo/papa/PK 8demo/papa/common/PK 8demo/papa/common/jaxbgen/PK 8i +demo/codeanalyzer/common/CodeAnalyzer.class1 #BC B D E FGH BI J KL MN O PQ KR ST SUV W XYZ [\ ]^ [_` [abc !de !Bf verifyWorker'Ldemo/codeanalyzer/common/CodeAnalyzer;()VCodeLineNumberTableLocalVariableTablethisprocess(Ljava/lang/String;)V errorMessageLjava/lang/String; locDetails)Ldemo/codeanalyzer/common/model/Location; errorDetails1Ldemo/codeanalyzer/common/model/ErrorDescription;i$Ljava/util/Iterator; className ruleEngine+Ldemo/codeanalyzer/common/rule/RulesEngine;problemsLjava/util/Collection;LocalVariableTypeTableILjava/util/Collection; getInstance)()Ldemo/codeanalyzer/common/CodeAnalyzer; SourceFileCodeAnalyzer.java &')demo/codeanalyzer/common/rule/RulesEngine g- hij kljava/lang/StringBuilder ********** mno pq mr Problems Found ********** stu v- wxy z{ |}/demo/codeanalyzer/common/model/ErrorDescription ~t Error Message:  . Line Num:  m offset q - q******************************,********** No Violations detected ********** $%%demo/codeanalyzer/common/CodeAnalyzerjava/lang/Object fireRulesgetProblemsFound()Ljava/util/Collection;java/lang/SystemoutLjava/io/PrintStream;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;java/util/Collectionsize()I(I)Ljava/lang/StringBuilder;toString()Ljava/lang/String;java/io/PrintStreamprintlniterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;getErrorMessagesgetErrorLocation+()Ldemo/codeanalyzer/common/model/Location;'demo/codeanalyzer/common/model/Location getLineNumber()J(J)Ljava/lang/StringBuilder;getStartOffset getEndOffset!!# $%&'(3*) * +%,-(uûYM,+,N-Y -   -:g:::Y        )6  9W^e #*R^N./eG01WU23An45+%6/789:; 9< =>( )'?'(# !Y" )@APK 8f4demo/codeanalyzer/common/jaxbgen/ObjectFactory.class1   ()VCodeLineNumberTableLocalVariableTablethis0Ldemo/codeanalyzer/common/jaxbgen/ObjectFactory; createRules*()Ldemo/codeanalyzer/common/jaxbgen/Rules; createRule)()Ldemo/codeanalyzer/common/jaxbgen/Rule; SourceFileObjectFactory.javaRuntimeVisibleAnnotations'Ljavax/xml/bind/annotation/XmlRegistry;  &demo/codeanalyzer/common/jaxbgen/Rules%demo/codeanalyzer/common/jaxbgen/Rule.demo/codeanalyzer/common/jaxbgen/ObjectFactoryjava/lang/Object!  3* $%   2Y ,   2Y 4  PK 8&8LL+demo/codeanalyzer/common/jaxbgen/Rule.class1( # $ %&'ruleNameLjava/lang/String;RuntimeVisibleAnnotations(Ljavax/xml/bind/annotation/XmlAttribute; ruleClass()VCodeLineNumberTableLocalVariableTablethis'Ldemo/codeanalyzer/common/jaxbgen/Rule; getRuleName()Ljava/lang/String; setRuleName(Ljava/lang/String;)Vvalue getRuleClass setRuleClass SourceFile Rule.java+Ljavax/xml/bind/annotation/XmlAccessorType;)Ljavax/xml/bind/annotation/XmlAccessType;FIELD#Ljavax/xml/bind/annotation/XmlType;name*Ljavax/xml/bind/annotation/XmlRootElement;rule  %demo/codeanalyzer/common/jaxbgen/Rulejava/lang/Object!     /*)  /*9  >*+ EF /*Q  >*+ ]^es !s"PK 8"I,demo/codeanalyzer/common/jaxbgen/Rules.class1' " #$ "%&ruleLjava/util/List; Signature9Ljava/util/List;()VCodeLineNumberTableLocalVariableTablethis(Ldemo/codeanalyzer/common/jaxbgen/Rules;getRule()Ljava/util/List;;()Ljava/util/List; SourceFile Rules.javaRuntimeVisibleAnnotations+Ljavax/xml/bind/annotation/XmlAccessorType;value)Ljavax/xml/bind/annotation/XmlAccessType;FIELD#Ljavax/xml/bind/annotation/XmlType;name propOrder*Ljavax/xml/bind/annotation/XmlRootElement;rules java/util/ArrayList&demo/codeanalyzer/common/jaxbgen/Rulesjava/lang/Object!    /*+  I**Y*FGI  'es[s s!PK 8T/demo/codeanalyzer/common/model/Annotation.class1 getName()Ljava/lang/String; SourceFileAnnotation.java)demo/codeanalyzer/common/model/Annotationjava/lang/ObjectPK 8.)  3demo/codeanalyzer/common/model/AnnotationInfo.class11 " #$ "% "& ' ( )* (+,-nameLjava/lang/String;()VCodeLineNumberTableLocalVariableTablethis/Ldemo/codeanalyzer/common/model/AnnotationInfo;getName()Ljava/lang/String;setName(Ljava/lang/String;)VtoStringbufferLjava/lang/StringBuffer; SourceFileAnnotationInfo.java  java/lang/StringBufferjava/lang/StringBuilderAnnotation Name: ./  .0 -demo/codeanalyzer/common/model/AnnotationInfojava/lang/Object)demo/codeanalyzer/common/model/Annotationappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;,(Ljava/lang/String;)Ljava/lang/StringBuffer;! /* /*  >*+ o/YL+Y* W+ W+ #*/' !PK 8UOJ%%7demo/codeanalyzer/common/model/BaseJavaClassModel.class1getName()Ljava/lang/String;getAnnotations()Ljava/util/Collection; SignatureE()Ljava/util/Collection;isPublic()Z isProtectedisFinalisNativeisStatic isPrivate isAbstractgetLocationInfo+()Ldemo/codeanalyzer/common/model/Location; SourceFileBaseJavaClassModel.java1demo/codeanalyzer/common/model/BaseJavaClassModeljava/lang/Object        PK 8 ;demo/codeanalyzer/common/model/BaseJavaClassModelInfo.class1f Q RS Q T U V W X Y Z [ \] ^ _`ab moduleTypeInameLjava/lang/String; annontationsLjava/util/Collection; SignatureCLjava/util/Collection; locationInfo)Ldemo/codeanalyzer/common/model/Location; publicFlagZ privateFlag protectedFlag finalFlag abstractFlag nativeFlag staticFlag()VCodeLineNumberTableLocalVariableTablethis7Ldemo/codeanalyzer/common/model/BaseJavaClassModelInfo;setAbstractFlag(Z)V isAbstract()Z setFinalFlagisFinal setNativeFlagisNativesetPrivateFlag isPrivatesetProtectedFlag isProtected setPublicFlagisPublic setStaticFlagisStaticgetName()Ljava/lang/String;setName(Ljava/lang/String;)VgetAnnotations()Ljava/util/Collection;E()Ljava/util/Collection; addAnnotation.(Ldemo/codeanalyzer/common/model/Annotation;)Vanno+Ldemo/codeanalyzer/common/model/Annotation; getModuleType()I setModuleType(I)VgetLocationInfo+()Ldemo/codeanalyzer/common/model/Location;setLocationInfo,(Ldemo/codeanalyzer/common/model/Location;)V SourceFileBaseJavaClassModelInfo.java %& java/util/ArrayList  " ! #    $c de  5demo/codeanalyzer/common/model/BaseJavaClassModelInfojava/lang/Object1demo/codeanalyzer/common/model/BaseJavaClassModeljava/util/Collectionadd(Ljava/lang/Object;)Z!  !"#$%&'G***Y(  ) *+,-'>*( #$)*+"./'/*(') *+0-'>*( +,)*+!1/'/*(/) *+2-'>*( 34)*+#3/'/*(7) *+4-'>* ( ;<)*+5/'/* (?) *+6-'>* ( CD)*+ 7/'/* (G) *+8-'>* ( KL)*+9/'/* (O) *+:-'>* ( ST)*+$;/'/* (W) *+<='/*([) *+>?'>*+( _`)*+@A'/*(c) *+BCD'D *+ W( g h) *+ EFGH'/*(k) *+IJ'>*( op)*+KL'/*(s) *+MN'>*+( wx)*+OPPK 8X.demo/codeanalyzer/common/model/ClassFile.class1  getFields()Ljava/util/Collection; Signature@()Ljava/util/Collection;getField:(Ljava/lang/String;)Ldemo/codeanalyzer/common/model/Field; getMethodsB()Ljava/util/Collection<+Ldemo/codeanalyzer/common/model/Method;>;getNameOfSuperClass()Ljava/lang/String;getNameOfInterfaces,()Ljava/util/Collection; isInterface()ZisSerializableisTopLevelClassgetConstructorsA()Ljava/util/Collection; getClassTypesgetSourceTreeInfo5()Ldemo/codeanalyzer/common/model/JavaSourceTreeInfo; addClassType(Ljava/lang/String;)V SourceFileClassFile.java(demo/codeanalyzer/common/model/ClassFilejava/lang/Object1demo/codeanalyzer/common/model/BaseJavaClassModel     PK 8S2demo/codeanalyzer/common/model/ClassModelMap.class17 () ( * + ,-. ,/0 (1 classInfoMapLjava/util/Map; SignatureMLjava/util/Map;modelMap.Ldemo/codeanalyzer/common/model/ClassModelMap;()VCodeLineNumberTableLocalVariableTablethis getInstance0()Ldemo/codeanalyzer/common/model/ClassModelMap;getClassInfoMap()Ljava/util/Map;O()Ljava/util/Map; getClassInfo>(Ljava/lang/String;)Ldemo/codeanalyzer/common/model/ClassFile; classNameLjava/lang/String; addClassInfo?(Ljava/lang/String;Ldemo/codeanalyzer/common/model/ClassFile;)V classInfo*Ldemo/codeanalyzer/common/model/ClassFile; SourceFileClassModelMap.java java/util/HashMap 2 34(demo/codeanalyzer/common/model/ClassFile 56,demo/codeanalyzer/common/model/ClassModelMapjava/lang/Object java/util/Mapget&(Ljava/lang/Object;)Ljava/lang/Object;put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;!   B**Y   /* B*+ !"O *+,W  !     #$%# Y  &'PK 8TE15demo/codeanalyzer/common/model/ErrorDescription.class1    errorMessagesLjava/lang/String; errorLocation)Ldemo/codeanalyzer/common/model/Location;()VCodeLineNumberTableLocalVariableTablethis1Ldemo/codeanalyzer/common/model/ErrorDescription;getErrorLocation+()Ldemo/codeanalyzer/common/model/Location;setErrorLocation,(Ldemo/codeanalyzer/common/model/Location;)VgetErrorMessages()Ljava/lang/String;setErrorMessages(Ljava/lang/String;)V SourceFileErrorDescription.java  /demo/codeanalyzer/common/model/ErrorDescriptionjava/lang/Object!   /*   /*    >*+   /*   >*+ PK 8 z9*demo/codeanalyzer/common/model/Field.class1 addFieldType(Ljava/lang/String;)VgetOwningClass,()Ldemo/codeanalyzer/common/model/ClassFile; getFieldTypes()Ljava/util/Collection; Signature,()Ljava/util/Collection; SourceFile Field.java$demo/codeanalyzer/common/model/Fieldjava/lang/Object1demo/codeanalyzer/common/model/BaseJavaClassModel     PK 8,=.demo/codeanalyzer/common/model/FieldInfo.class10 $% $ & '( )*+, owningClass*Ldemo/codeanalyzer/common/model/ClassFile; fieldTypesLjava/util/Collection; Signature*Ljava/util/Collection;()VCodeLineNumberTableLocalVariableTablethis*Ldemo/codeanalyzer/common/model/FieldInfo; addFieldType(Ljava/lang/String;)V fieldTypeLjava/lang/String; getFieldTypes()Ljava/util/Collection;,()Ljava/util/Collection;getOwningClass,()Ldemo/codeanalyzer/common/model/ClassFile;setOwningClass-(Ldemo/codeanalyzer/common/model/ClassFile;)V SourceFileFieldInfo.java java/util/ArrayList - ./ (demo/codeanalyzer/common/model/FieldInfo5demo/codeanalyzer/common/model/BaseJavaClassModelInfo$demo/codeanalyzer/common/model/Fieldjava/util/Collectionadd(Ljava/lang/Object;)Z!   >**Y    D *+W    /* /*  !>*+   "#PK 8&&2demo/codeanalyzer/common/model/JavaClassInfo.class1 rs r t u v wx r y z {| {}~ {       nameOfSuperClassLjava/lang/String; packageName nestingKind isInterfaceZisSerializablesourceTreeInfo3Ldemo/codeanalyzer/common/model/JavaSourceTreeInfo;methodsLjava/util/Collection; Signature?Ljava/util/Collection; constructorsnameOfInterfaces*Ljava/util/Collection; classTypesfieldsLjava/util/Map;ILjava/util/Map;()VCodeLineNumberTableLocalVariableTablethis.Ldemo/codeanalyzer/common/model/JavaClassInfo;addField)(Ldemo/codeanalyzer/common/model/Field;)Vfield&Ldemo/codeanalyzer/common/model/Field;getField:(Ljava/lang/String;)Ldemo/codeanalyzer/common/model/Field; fieldName setFields(Ljava/util/Map;)VLocalVariableTypeTableL(Ljava/util/Map;)V getFields()Ljava/util/Collection;@()Ljava/util/Collection;setNameOfSuperClass(Ljava/lang/String;)V superClassgetNameOfSuperClass()Ljava/lang/String;setPackageNamegetPackageNamegetNestingKindsetNestingKindsetSourceTreeInfo6(Ldemo/codeanalyzer/common/model/JavaSourceTreeInfo;)VgetSourceTreeInfo5()Ldemo/codeanalyzer/common/model/JavaSourceTreeInfo; getMethodsA()Ljava/util/Collection; setMethods(Ljava/util/Collection;)VB(Ljava/util/Collection;)V addMethod*(Ldemo/codeanalyzer/common/model/Method;)Vmethod'Ldemo/codeanalyzer/common/model/Method;getConstructorssetConstructorsaddConstructorgetNameOfInterfaces,()Ljava/util/Collection;setNameOfInterfaces interfaces-(Ljava/util/Collection;)VaddNameOfInterface interfaceDet getClassTypes setClassTypes addClassType classType()ZsetIsInterface(Z)V interfaceFlagsetSerializableisTopLevelClass SourceFileJavaClassInfo.java 12java/util/ArrayList &' *' +' -'java/util/HashMap ./ J $demo/codeanalyzer/common/model/Field D    $% !" #" J ,demo/codeanalyzer/common/model/JavaClassInfo5demo/codeanalyzer/common/model/BaseJavaClassModelInfo(demo/codeanalyzer/common/model/ClassFilegetName java/util/Mapput8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;get&(Ljava/lang/Object;)Ljava/lang/Object;valuesjava/util/Collectionadd(Ljava/lang/Object;)Z$javax/lang/model/element/NestingKind TOP_LEVEL&Ljavax/lang/model/element/NestingKind;toStringjava/lang/Stringequals!  !"#"$%&'()*'()+'(,-'(,./(0123z<**Y*Y*Y*Y*Y 4 %05 <67893J* + + W4 567:;<=3B* + 4 567>?@3P*+ 4 $%567./A .0(BCD34 * 4(5  67(EFG3>*+4 ,-567HIJ3/*405 67KG3>*+4 45567LJ3/*485 67MJ3/*4<5 67NG3>*+4 @A567 OP3>*+4 DE567$%QR3/*4H5 67SD3/*4L5 67(TUV3P*+4 PQ567&'A &)(WXY3D *+W4 T U5 67 Z[\D3/*4X5 67(T]V3P*+4 \]567*'A *)(W^Y3D *+W4 ` a5 67 Z[_D3/*4d5 67(`aV3P*+4 hi567b'A b,(cdG3D *+W4 l m5 67 efD3/*4p5 67(`gV3P*+4 tu567-'A -,(chG3D *+W4 x y5 67 i!j3/*4|5 67kl3>*4 567m"nl3>*4 567#"#j3/*45 67oj38*45 67pqPK 8q,EE3demo/codeanalyzer/common/model/JavaSourceTree.class1   getCompileTree+()Lcom/sun/source/tree/CompilationUnitTree;getTree()Lcom/sun/source/tree/Tree; getSourcePos'()Lcom/sun/source/util/SourcePositions; SourceFileJavaSourceTree.java-demo/codeanalyzer/common/model/JavaSourceTreejava/lang/Object  PK 8CGMM7demo/codeanalyzer/common/model/JavaSourceTreeInfo.class1* # $ % &'()treeLcom/sun/source/tree/Tree; compileTree)Lcom/sun/source/tree/CompilationUnitTree; sourcePos%Lcom/sun/source/util/SourcePositions;()VCodeLineNumberTableLocalVariableTablethis3Ldemo/codeanalyzer/common/model/JavaSourceTreeInfo;getCompileTree+()Lcom/sun/source/tree/CompilationUnitTree;setCompileTree,(Lcom/sun/source/tree/CompilationUnitTree;)VgetTree()Lcom/sun/source/tree/Tree;setTree(Lcom/sun/source/tree/Tree;)V getSourcePos'()Lcom/sun/source/util/SourcePositions; setSourcePos((Lcom/sun/source/util/SourcePositions;)V SourceFileJavaSourceTreeInfo.java   1demo/codeanalyzer/common/model/JavaSourceTreeInfojava/lang/Object-demo/codeanalyzer/common/model/JavaSourceTree!   J****   /* >*+  /* >*+  /*"  >*+ &' !"PK 8K-demo/codeanalyzer/common/model/Location.class1   getStartOffset()I getEndOffset getLineNumber()J SourceFile Location.java'demo/codeanalyzer/common/model/Locationjava/lang/Object PK 8/1demo/codeanalyzer/common/model/LocationInfo.class1'  ! " #$%& startOffsetI endOffset lineNumberJ()VCodeLineNumberTableLocalVariableTablethis-Ldemo/codeanalyzer/common/model/LocationInfo; getEndOffset()I setEndOffset(I)VgetStartOffsetsetStartOffset getLineNumber()J setLineNumber(J)V SourceFileLocationInfo.java   +demo/codeanalyzer/common/model/LocationInfojava/lang/Object'demo/codeanalyzer/common/model/Location!    /* /* >*  /* >*  /* >* #$ PK 8f+demo/codeanalyzer/common/model/Method.class1getOwningClass,()Ldemo/codeanalyzer/common/model/ClassFile; getExceptions()Ljava/util/Collection; Signature,()Ljava/util/Collection; getParameters getReturnType()Ljava/lang/String; SourceFile Method.java%demo/codeanalyzer/common/model/Methodjava/lang/Object1demo/codeanalyzer/common/model/BaseJavaClassModel     PK 8V8{ { /demo/codeanalyzer/common/model/MethodInfo.class1z MN M O P Q RS TU MV MW X Y Z [\ R]^ R_ `a `bc dZe Zfgh owningClass*Ldemo/codeanalyzer/common/model/ClassFile; parametersLjava/util/Collection; Signature*Ljava/util/Collection; returnTypeLjava/lang/String; exceptions()VCodeLineNumberTableLocalVariableTablethis+Ldemo/codeanalyzer/common/model/MethodInfo;getOwningClass,()Ldemo/codeanalyzer/common/model/ClassFile;setOwningClass-(Ldemo/codeanalyzer/common/model/ClassFile;)V getParameters()Ljava/util/Collection;,()Ljava/util/Collection; setParameters(Ljava/util/Collection;)VLocalVariableTypeTable-(Ljava/util/Collection;)V addParameters(Ljava/lang/String;)V parameter getReturnType()Ljava/lang/String; setReturnType getExceptions setExceptions addException exceptiontoStringparamLjava/lang/Object;i$Ljava/util/Iterator;bufferLjava/lang/StringBuffer; SourceFileMethodInfo.java ()java/util/ArrayList !" '"  i jk %&java/lang/StringBufferjava/lang/StringBuilder Method Name: lm n> D> lo pqNo parameters defined rst uv wxjava/lang/Stringy, )demo/codeanalyzer/common/model/MethodInfo5demo/codeanalyzer/common/model/BaseJavaClassModelInfo%demo/codeanalyzer/common/model/Methodjava/util/Collectionadd(Ljava/lang/Object;)Zappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;getName,(Ljava/lang/String;)Ljava/lang/StringBuffer;size()Iiterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;java/lang/Object! !"#$%&'"#$ ()*M**Y*Y+  , -./0*/*+, -.12*>*++ ,-. 34*/*+, -.#567*P*++ ,-.!"8 !$#9:;*D *+W+ " #, -. <&=>*/*+&, -.?;*>*++ *+,-.%&@4*/*+., -.#5A7*P*++ 23,-.'"8 '$#9B;*D *+W+ 6 7, -. C&D>*y Y L+ Y  *W+W*+W+W*M, ,N+-W+W++* :;#<*=6>=?DAaBjCtE,*aEFN&GHy-.qIJKLPK 8$  3demo/codeanalyzer/common/model/SourceTreeInfo.class1( " # $ %&'treeLcom/sun/source/tree/Tree; compileTree)Lcom/sun/source/tree/CompilationUnitTree; sourcePos%Lcom/sun/source/util/SourcePositions;()VCodeLineNumberTableLocalVariableTablethis/Ldemo/codeanalyzer/common/model/SourceTreeInfo;getCompileTree+()Lcom/sun/source/tree/CompilationUnitTree;setCompileTree,(Lcom/sun/source/tree/CompilationUnitTree;)VgetTree()Lcom/sun/source/tree/Tree;setTree(Lcom/sun/source/tree/Tree;)V getSourcePos'()Lcom/sun/source/util/SourcePositions; setSourcePos((Lcom/sun/source/util/SourcePositions;)V SourceFileSourceTreeInfo.java   -demo/codeanalyzer/common/model/SourceTreeInfojava/lang/Object!   J****   /* >*+  /* >*+ /*" >*+ &'  !PK 8rgo4demo/codeanalyzer/common/rule/AbstractCodeRule.class10 $ %& $ ' ()*+()VCodeLineNumberTableLocalVariableTablethis0Ldemo/codeanalyzer/common/rule/AbstractCodeRule;LocalVariableTypeTable5Ldemo/codeanalyzer/common/rule/AbstractCodeRule;applyB(Ldemo/codeanalyzer/common/model/ClassFile;)Ljava/util/Collection;execute clazzInfo*Ldemo/codeanalyzer/common/model/ClassFile;setErrorDetailsn(Ljava/lang/String;Ldemo/codeanalyzer/common/model/Location;)Ldemo/codeanalyzer/common/model/ErrorDescription; errorMessageLjava/lang/String;errorLoc)Ldemo/codeanalyzer/common/model/Location; errorDesc1Ldemo/codeanalyzer/common/model/ErrorDescription; SignatureYLjava/lang/Object;Ldemo/codeanalyzer/common/rule/JavaCodeRule; SourceFileAbstractCodeRule.java /demo/codeanalyzer/common/model/ErrorDescription ,- ./.demo/codeanalyzer/common/rule/AbstractCodeRulejava/lang/Object*demo/codeanalyzer/common/rule/JavaCodeRulesetErrorMessages(Ljava/lang/String;)VsetErrorLocation,(Ldemo/codeanalyzer/common/model/Location;)V!   A*    L*+ )  zYN-+-,- ./ 01*   !"#PK 8) C0demo/codeanalyzer/common/rule/JavaCodeRule.class1   executeB(Ldemo/codeanalyzer/common/model/ClassFile;)Ljava/util/Collection; Signature(Ljava/lang/Object; SourceFileJavaCodeRule.java*demo/codeanalyzer/common/rule/JavaCodeRulejava/lang/ObjectPK 8u u .demo/codeanalyzer/common/rule/RuleLoader.class1 ? @A ? B C DE FG FHI J KLMN ?O PQ RS PT UV UWX YZ [\ ]^ ruleLoader*Ldemo/codeanalyzer/common/rule/RuleLoader;rules(Ldemo/codeanalyzer/common/jaxbgen/Rules;()VCodeLineNumberTableLocalVariableTablethis getInstance,()Ldemo/codeanalyzer/common/rule/RuleLoader; fetchRules()Ljava/util/Set;rule'Ldemo/codeanalyzer/common/jaxbgen/Rule;i$Ljava/util/Iterator; exceptionLjava/lang/Exception; ruleNameListLjava/util/Set;LocalVariableTypeTable#Ljava/util/Set; Signature%()Ljava/util/Set;jcLjavax/xml/bind/JAXBContext; unmarshallerLjavax/xml/bind/Unmarshaller;inStreamLjava/io/InputStream;e SourceFileRuleLoader.java  java/util/HashSet  _`a bcd ef gh%demo/codeanalyzer/common/jaxbgen/Rule ijk lmjava/lang/Exception(demo/codeanalyzer/common/rule/RuleLoader&demo/codeanalyzer/common/jaxbgen/Rulesn opq rj stu vw xy rules.xmlz {|} ~ java/lang/ObjectgetRule()Ljava/util/List;java/util/Listiterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object; getRuleClass()Ljava/lang/String; java/util/Setadd(Ljava/lang/Object;)Zjava/lang/Class getPackage()Ljava/lang/Package;java/lang/PackagegetNamegetClassLoader()Ljava/lang/ClassLoader;javax/xml/bind/JAXBContext newInstanceG(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/bind/JAXBContext;createUnmarshaller()Ljavax/xml/bind/Unmarshaller;java/lang/ClassLoadergetResourceAsStream)(Ljava/lang/String;)Ljava/io/InputStream;javax/xml/bind/Unmarshaller unmarshal)(Ljava/io/InputStream;)Ljava/lang/Object;printStackTrace!   !3*" 9;# $ %&!"D'(!=YLM,,  N+- WM+58 "RU'V5[8Y9Z;\#4' )*!+,9-.=$5/01 5/2345 !HYK*LM+,K*?B "*  '!+&-20?3B1C2G4#*!67&892 :;C<.=>PK 8nhug g /demo/codeanalyzer/common/rule/RulesEngine.class1} <= < > ?@ ?A B CD EF EGH I CJ KL KM NOP <Q R S T UV WXYZ problemsFoundLjava/util/Collection; SignatureILjava/util/Collection;()VCodeLineNumberTableLocalVariableTablethis+Ldemo/codeanalyzer/common/rule/RulesEngine; fireRules(Ljava/lang/String;)Vproblemsrule,Ldemo/codeanalyzer/common/rule/JavaCodeRule;i$Ljava/util/Iterator; classNameLjava/lang/String; clazzInfo*Ldemo/codeanalyzer/common/model/ClassFile;LocalVariableTypeTablegetRules()Ljava/util/Collection; ruleNameListLjava/util/Set;#Ljava/util/Set;n()Ljava/util/Collection;>;getProblemsFoundK()Ljava/util/Collection; SourceFileRulesEngine.java  java/util/ArrayList [ \] ^_ 23` abc de fg*demo/codeanalyzer/common/rule/JavaCodeRule hi jkl \m nop qrjava/lang/StringBuilder Rules are st su vwx y'z {|)demo/codeanalyzer/common/rule/RulesEnginejava/lang/Object,demo/codeanalyzer/common/model/ClassModelMap getInstance0()Ldemo/codeanalyzer/common/model/ClassModelMap; getClassInfo>(Ljava/lang/String;)Ldemo/codeanalyzer/common/model/ClassFile;java/util/Collectioniterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;executeB(Ldemo/codeanalyzer/common/model/ClassFile;)Ljava/util/Collection;addAll(Ljava/util/Collection;)Z(demo/codeanalyzer/common/rule/RuleLoader,()Ldemo/codeanalyzer/common/rule/RuleLoader; fetchRules()Ljava/util/Set;java/lang/SystemoutLjava/io/PrintStream;append-(Ljava/lang/String;)Ljava/lang/StringBuilder;-(Ljava/lang/Object;)Ljava/lang/StringBuilder;toString()Ljava/lang/String;java/io/PrintStreamprintln.demo/codeanalyzer/common/util/CodeAnalyzerUtilgetRuleInstances!(Ljava/util/Set;)Ljava/util/List;! !>**Y" # $%&'!E+M*N- ,-  :, :* Wѱ"&'&)0*5+A-D.#>0(&)*2+,E$%E-.=/01 0(23!s%LY++"=> @#%$%451 46783!/*"J# $%9:;PK 8`9demo/codeanalyzer/common/util/CodeAnalyzerConstants.class1# SERIALIZABLE_PKGLjava/lang/String; ConstantValueRULE_CONFIG_FILE DEFAULT_RULES VERIFY_SOURCE_ARG!VERIFY_BINARY_ARG"DEFAULT_CONSTRUCTOR_NAME()VCodeLineNumberTableLocalVariableTablethis5Ldemo/codeanalyzer/common/util/CodeAnalyzerConstants; SourceFileCodeAnalyzerConstants.java 3demo/codeanalyzer/common/util/CodeAnalyzerConstantsjava/lang/Objectjava.io.Serializable rules.xml* verifysource verifybinary!     /*  PK 8Ƣ 4demo/codeanalyzer/common/util/CodeAnalyzerUtil.class1| DE D FG HI HJK LM LNO PQR S TU V WX D YZ [G\ ]^_()VCodeLineNumberTableLocalVariableTablethis0Ldemo/codeanalyzer/common/util/CodeAnalyzerUtil;getRuleInstances!(Ljava/util/Set;)Ljava/util/List;ruleNameLjava/lang/String;i$Ljava/util/Iterator;eLjava/lang/Exception; ruleNameListLjava/util/Set; classRulesLjava/util/List;classDefinitionLjava/lang/Class;objectLjava/lang/Object;LocalVariableTypeTable#Ljava/util/Set;fLjava/util/List;>; Signature(Ljava/util/Set;)Ljava/util/List;>;getSimpleNameFromQualifiedName&(Ljava/lang/String;)Ljava/lang/String; qualifiedName simpleNamegetAnnotationAsStringList<(Ldemo/codeanalyzer/common/model/ClassFile;)Ljava/util/List;clazzAnnotation+Ldemo/codeanalyzer/common/model/Annotation; classFile*Ldemo/codeanalyzer/common/model/ClassFile;annotationList$Ljava/util/List; SourceFileCodeAnalyzerUtil.java java/util/LinkedList` abc de fgjava/lang/Stringh ij kg*demo/codeanalyzer/common/rule/JavaCodeRulel mnjava/lang/Exception o pq. rs tujava/util/ArrayListv wxy)demo/codeanalyzer/common/model/Annotation z{.demo/codeanalyzer/common/util/CodeAnalyzerUtiljava/lang/Object java/util/Setiterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;java/lang/ClassforName%(Ljava/lang/String;)Ljava/lang/Class; newInstancejava/util/Listadd(Ljava/lang/Object;)ZprintStackTracelength()I lastIndexOf(Ljava/lang/String;)I substring(II)Ljava/lang/String;(demo/codeanalyzer/common/model/ClassFilegetAnnotations()Ljava/util/Collection;java/util/CollectiongetName()Ljava/lang/String;!/*  !"QYLMN*:(:M, N+- Wԧ : + CF 2 !# $ &*'0(5)C.F+H,M-O/H*#$/%&H'(Q)*I+, G-. E/01Q)2I+345 67` L****`*L+9: ;> 8$9$ :;9YL*M,,N+- W+BC'D7F*' <=#%&9>?1@,1 1@ABCPK 83demo/codeanalyzer/helper/AnnotationDataSetter.class1-    ! "#$%()VCodeLineNumberTableLocalVariableTablethis/Ldemo/codeanalyzer/helper/AnnotationDataSetter;populateAnnotationInfow(Ldemo/codeanalyzer/common/model/JavaClassInfo;Lcom/sun/source/tree/AnnotationTree;Ljavax/lang/model/type/TypeMirror;)V clazzInfo.Ldemo/codeanalyzer/common/model/JavaClassInfo;annotationTree$Lcom/sun/source/tree/AnnotationTree;mirror"Ljavax/lang/model/type/TypeMirror; qualifiedNameLjava/lang/String;annotationInfo/Ldemo/codeanalyzer/common/model/AnnotationInfo; SourceFileAnnotationDataSetter.java &'-demo/codeanalyzer/common/model/AnnotationInfo ()* +,-demo/codeanalyzer/helper/AnnotationDataSetterjava/lang/ObjecttoString()Ljava/lang/String;setName(Ljava/lang/String;)V,demo/codeanalyzer/common/model/JavaClassInfo addAnnotation.(Ldemo/codeanalyzer/common/model/Annotation;)V!  /*    },NY:-*  4 PK 8`2demo/codeanalyzer/helper/ClassInfoDataSetter.class1 .^ _`a b .c de f gc dh i jk lm lno c pq r ds t ukv dwx yz y{ d|} ~  ^ e d p d %^ _ % _ % d()VCodeLineNumberTableLocalVariableTablethis.Ldemo/codeanalyzer/helper/ClassInfoDataSetter;populateClassInfo(Ldemo/codeanalyzer/common/model/JavaClassInfo;Lcom/sun/source/tree/ClassTree;Lcom/sun/source/util/TreePath;Lcom/sun/source/util/Trees;)Vmodifier#Ljavax/lang/model/element/Modifier;i$Ljava/util/Iterator;mirror"Ljavax/lang/model/type/TypeMirror; serializableLjava/lang/Class; thisClassex"Ljava/lang/ClassNotFoundException; qualifiedNameLjava/lang/String;annotationInfo/Ldemo/codeanalyzer/common/model/AnnotationInfo;annotationMirror+Ljavax/lang/model/element/AnnotationMirror; clazzInfo.Ldemo/codeanalyzer/common/model/JavaClassInfo; classTreeLcom/sun/source/tree/ClassTree;pathLcom/sun/source/util/TreePath;treesLcom/sun/source/util/Trees;e&Ljavax/lang/model/element/TypeElement; annotationsLjava/util/List; locationInfo-Ldemo/codeanalyzer/common/model/LocationInfo;treeInfo3Ldemo/codeanalyzer/common/model/JavaSourceTreeInfo;tpLocalVariableTypeTable>Ljava/util/List<+Ljavax/lang/model/element/AnnotationMirror;>; SourceFileClassInfoDataSetter.java /0 $javax/lang/model/element/TypeElement     !javax/lang/model/element/Modifier  javax/lang/model/type/TypeMirror java.io.Serializable  java/lang/ClassNotFoundException )javax/lang/model/element/AnnotationMirror -demo/codeanalyzer/common/model/AnnotationInfo 1demo/codeanalyzer/common/model/JavaSourceTreeInfo  ,demo/codeanalyzer/helper/ClassInfoDataSetterjava/lang/Objectcom/sun/source/util/Trees getElementB(Lcom/sun/source/util/TreePath;)Ljavax/lang/model/element/Element;getQualifiedName!()Ljavax/lang/model/element/Name;toString()Ljava/lang/String;,demo/codeanalyzer/common/model/JavaClassInfosetName(Ljava/lang/String;)VgetNestingKind(()Ljavax/lang/model/element/NestingKind;$javax/lang/model/element/NestingKindsetNestingKind getModifiers()Ljava/util/Set; java/util/Setiterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;'demo/codeanalyzer/helper/DataSetterUtil setModifiersL(Ljava/lang/String;Ldemo/codeanalyzer/common/model/BaseJavaClassModelInfo;)V getSuperclass$()Ljavax/lang/model/type/TypeMirror;setNameOfSuperClass getInterfaces()Ljava/util/List;java/util/ListaddNameOfInterfacejava/lang/ClassforName%(Ljava/lang/String;)Ljava/lang/Class;isAssignableFrom(Ljava/lang/Class;)ZsetSerializable(Z)VgetAnnotationMirrorsjava/lang/String substring(I)Ljava/lang/String; addAnnotation.(Ldemo/codeanalyzer/common/model/Annotation;)VgetLocationInfo(Lcom/sun/source/util/Trees;Lcom/sun/source/util/TreePath;Lcom/sun/source/tree/Tree;)Ldemo/codeanalyzer/common/model/LocationInfo;setLocationInfo,(Ldemo/codeanalyzer/common/model/Location;)VgetPathB(Ljavax/lang/model/element/Element;)Lcom/sun/source/util/TreePath;com/sun/source/util/TreePathgetCompilationUnit+()Lcom/sun/source/tree/CompilationUnitTree;setCompileTree,(Lcom/sun/source/tree/CompilationUnitTree;)VgetSourcePositions'()Lcom/sun/source/util/SourcePositions; setSourcePos((Lcom/sun/source/util/SourcePositions;)VsetSourceTreeInfo6(Ldemo/codeanalyzer/common/model/JavaSourceTreeInfo;)V!-./01/*23 45 671 P-,:**   :  :**:  :*:: ** :*:: 3 ::Y :  !* "-,+#:*$%Y&:-':()-*+*,2~% (+&.J/V3d67;<=>@ECDGHIJKLMOP%S.T6U@VIWOY3J 894":; <=r":;&>?@?ABCD EF !GH::;PIJPKLPMNPOP FQR|ST1UV."WX6YNZ |S[\]PK 8> > -demo/codeanalyzer/helper/DataSetterUtil.class1w 7 89 8: ;< => 8? =@ 8A =B 8C =D 8E =F 8G =H 8I =JK 7 LM NO PQ RST()VCodeLineNumberTableLocalVariableTablethis)Ldemo/codeanalyzer/helper/DataSetterUtil; setModifiersL(Ljava/lang/String;Ldemo/codeanalyzer/common/model/BaseJavaClassModelInfo;)V modifiersLjava/lang/String; elementInfo7Ldemo/codeanalyzer/common/model/BaseJavaClassModelInfo;getLocationInfo(Lcom/sun/source/util/Trees;Lcom/sun/source/util/TreePath;Lcom/sun/source/tree/Tree;)Ldemo/codeanalyzer/common/model/LocationInfo;treesLcom/sun/source/util/Trees;pathLcom/sun/source/util/TreePath;treeLcom/sun/source/tree/Tree; locationInfo-Ldemo/codeanalyzer/common/model/LocationInfo;sourcePosition%Lcom/sun/source/util/SourcePositions; startPositionJ SourceFileDataSetterUtil.java U VW XYZ [\] ^_ `W a_ bW c_ dW e_ fW g_ hW i_ jW k_+demo/codeanalyzer/common/model/LocationInfol mno pqr st uv'demo/codeanalyzer/helper/DataSetterUtiljava/lang/Object!javax/lang/model/element/ModifierPUBLIC#Ljavax/lang/model/element/Modifier;toString()Ljava/lang/String;java/lang/Stringcontains(Ljava/lang/CharSequence;)Z5demo/codeanalyzer/common/model/BaseJavaClassModelInfo setPublicFlag(Z)V PROTECTEDsetProtectedFlagPRIVATEsetPrivateFlagFINAL setFinalFlagABSTRACTsetAbstractFlagNATIVE setNativeFlagSTATIC setStaticFlagcom/sun/source/util/TreesgetSourcePositions'()Lcom/sun/source/util/SourcePositions;com/sun/source/util/TreePathgetCompilationUnit+()Lcom/sun/source/tree/CompilationUnitTree;#com/sun/source/util/SourcePositionsgetStartPositionF(Lcom/sun/source/tree/CompilationUnitTree;Lcom/sun/source/tree/Tree;)JsetStartOffset(I)V!/*  !"* +** +*+ * + * + *+*+> "*7<IN [!`$m%r(),#$%& '(%YN*:+,7--0123#4>%)*%+,%-./012 3456PK 8 >Q Q 2demo/codeanalyzer/helper/FieldInfoDataSetter.class1 DE D FG H I JK LM NO NPQ H RS JT UMV WXY D Z [ Z \] R^ _`a()VCodeLineNumberTableLocalVariableTablethis.Ldemo/codeanalyzer/helper/FieldInfoDataSetter;populateFieldInfo(Ldemo/codeanalyzer/common/model/JavaClassInfo;Lcom/sun/source/tree/VariableTree;Ljavax/lang/model/element/Element;Lcom/sun/source/util/TreePath;Lcom/sun/source/util/Trees;)Vmodifier#Ljavax/lang/model/element/Modifier;i$Ljava/util/Iterator; qualifiedNameLjava/lang/String;annotationInfo/Ldemo/codeanalyzer/common/model/AnnotationInfo;annotationMirror+Ljavax/lang/model/element/AnnotationMirror; clazzInfo.Ldemo/codeanalyzer/common/model/JavaClassInfo; variableTree"Lcom/sun/source/tree/VariableTree;e"Ljavax/lang/model/element/Element;pathLcom/sun/source/util/TreePath;treesLcom/sun/source/util/Trees; fieldInfo*Ldemo/codeanalyzer/common/model/FieldInfo; fieldName annotationsLjava/util/List; locationInfo-Ldemo/codeanalyzer/common/model/LocationInfo;LocalVariableTypeTable>Ljava/util/List<+Ljavax/lang/model/element/AnnotationMirror;>; SourceFileFieldInfoDataSetter.java (demo/codeanalyzer/common/model/FieldInfob cd ef ghi jkl mno pq rs!javax/lang/model/element/Modifiert uv wxy)javax/lang/model/element/AnnotationMirrorz {|-demo/codeanalyzer/common/model/AnnotationInfo }~  ,demo/codeanalyzer/helper/FieldInfoDataSetterjava/lang/Object com/sun/source/tree/VariableTreegetName!()Ljavax/lang/model/element/Name;toString()Ljava/lang/String;setOwningClass-(Ldemo/codeanalyzer/common/model/ClassFile;)V javax/lang/model/element/Element getModifiers()Ljava/util/Set; java/util/Setiterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;'demo/codeanalyzer/helper/DataSetterUtil setModifiersL(Ljava/lang/String;Ldemo/codeanalyzer/common/model/BaseJavaClassModelInfo;)VgetAnnotationMirrors()Ljava/util/List;java/util/Listjava/lang/String substring(I)Ljava/lang/String;setName(Ljava/lang/String;)V addAnnotation.(Ldemo/codeanalyzer/common/model/Annotation;)V,demo/codeanalyzer/common/model/JavaClassInfoaddField)(Ldemo/codeanalyzer/common/model/Field;)VgetLocationInfo(Lcom/sun/source/util/Trees;Lcom/sun/source/util/TreePath;Lcom/sun/source/tree/Tree;)Ldemo/codeanalyzer/common/model/LocationInfo;setLocationInfo,(Ldemo/codeanalyzer/common/model/Location;)V!/* !" #$ ,Y:+:*,:   :  ,:: 4 :  : Y:    *-+:N !#B$O&W'v()*+,-.012 B %&,#'()* +, v"-. `;'(/0123456789:;*Wb<=>?@ Wb<ABCPK 8s21demo/codeanalyzer/helper/LocationInfoSetter.class1 1e fg hi jk lm 1n o p q r stu vw xy z{ x| }~  fw f    }   j  f  ) )w f f . .w()VCodeLineNumberTableLocalVariableTablethis-Ldemo/codeanalyzer/helper/LocationInfoSetter;setLocationInfoForElements1(Ldemo/codeanalyzer/common/model/JavaClassInfo;)V compileTree)Lcom/sun/source/tree/CompilationUnitTree;fileLjavax/tools/JavaFileObject;javaFileContentLjava/lang/String;bufferLjava/nio/CharBuffer;exLjava/io/IOException; clazzInfo.Ldemo/codeanalyzer/common/model/JavaClassInfo;getCharacterBufferOfSource)(Ljava/lang/String;)Ljava/nio/CharBuffer;javaFile charBuffersetLocInfoOfClasso(Ldemo/codeanalyzer/common/model/JavaClassInfo;Ljava/nio/CharBuffer;Lcom/sun/source/tree/CompilationUnitTree;)V strToSearchpLjava/util/regex/Pattern;matcherLjava/util/regex/Matcher; clazzName clazzNameLoc-Ldemo/codeanalyzer/common/model/LocationInfo; startIndexIendIndexsetLocInfoOfConstructorsconstructorNameLocmethod'Ldemo/codeanalyzer/common/model/Method;i$Ljava/util/Iterator;setLocInfoOfMethods methodNameLocsetLocInfoOfVariablesfield&Ldemo/codeanalyzer/common/model/Field; SourceFileLocationInfoSetter.java 23    GH KL XL ^L `Ljava/io/IOException+demo/codeanalyzer/helper/LocationInfoSetter      +demo/codeanalyzer/common/model/LocationInfo  P    %demo/codeanalyzer/common/model/Method $demo/codeanalyzer/common/model/Fieldjava/lang/Object,demo/codeanalyzer/common/model/JavaClassInfogetSourceTreeInfo5()Ldemo/codeanalyzer/common/model/JavaSourceTreeInfo;1demo/codeanalyzer/common/model/JavaSourceTreeInfogetCompileTree+()Lcom/sun/source/tree/CompilationUnitTree;'com/sun/source/tree/CompilationUnitTree getSourceFile()Ljavax/tools/JavaFileObject;javax/tools/JavaFileObjectgetCharContent(Z)Ljava/lang/CharSequence;toString()Ljava/lang/String;java/lang/ClassgetNamejava/util/logging/Logger getLogger.(Ljava/lang/String;)Ljava/util/logging/Logger;java/util/logging/LevelSEVERELjava/util/logging/Level;logC(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/Throwable;)Vjava/lang/String toCharArray()[Cjava/nio/CharBufferwrap([C)Ljava/nio/CharBuffer;.demo/codeanalyzer/common/util/CodeAnalyzerUtilgetSimpleNameFromQualifiedName&(Ljava/lang/String;)Ljava/lang/String;getLocationInfo+()Ldemo/codeanalyzer/common/model/Location;getStartOffset()Ilength subSequence(II)Ljava/lang/CharSequence;java/util/regex/Patterncompile-(Ljava/lang/String;)Ljava/util/regex/Pattern;3(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;java/util/regex/Matcherfind()ZstartsetStartOffset(I)V setEndOffset getLineMap()Lcom/sun/source/tree/LineMap;com/sun/source/tree/LineMap getLineNumber(J)J setLineNumber(J)VgetConstructors()Ljava/util/Collection;java/util/Collectioniterator()Ljava/util/Iterator;java/util/IteratorhasNextnext()Ljava/lang/Object; getMethods getFields! 1234/*56 78 9:4R*L+M,N-:*+*+ *+ *+ L +<? 52 "%&( *'+.,5-<0?.@/Q16>4;<-=>"?@ AB@CDREF GH4B *L+5 9:6 I@JB KL45 y*N*:66:++:-::  W `6-`6 !,"#$5>EGHIJ K/M5N>ODPNQWS^TeUxW6f /(M@5"NO>PQ yEFyABy;<qR@hSTaUV^WV XL4k *%&N-'-():*:66F++:+:  :  W `6+`6 !,"#$m5Bab*d1e4f9gHiTj]kclmm|opqst6p H4M@T(NO ]PQ *sYT1lUV4iWVZ[ \]EFAB;< ^L4k *,&N-'-():*:66F++:+:  :  W `6+`6 !,"#$m5B}~*149HT]cm|6p H4M@T(NO ]PQ *s_T1lUV4iWVZ[ \]EFAB;< `L4k *-&N-'-(.:/:66F++:0:  :  W `60`6 !,"#$m5B*149HT]cm|6p H4M@T(NO ]PQ *s_T1lUV4iWVab \]EFAB;<cdPK 8¸[##5demo/codeanalyzer/helper/MethodInfoDataSetter$1.class1] 1 2 34 56 78 79: ; <= > 3? @ AB CDEval$methodInfo+Ldemo/codeanalyzer/common/model/MethodInfo;.(Ldemo/codeanalyzer/common/model/MethodInfo;)VCodeLineNumberTableLocalVariableTablethis InnerClasses1Ldemo/codeanalyzer/helper/MethodInfoDataSetter$1;visitExecutablek(Ljavax/lang/model/element/ExecutableElement;Ldemo/codeanalyzer/common/model/MethodInfo;)Ljava/lang/Object;var*Ljavax/lang/model/element/VariableElement;i$Ljava/util/Iterator;element,Ljavax/lang/model/element/ExecutableElement;mInfoR(Ljavax/lang/model/element/ExecutableElement;Ljava/lang/Object;)Ljava/lang/Object;x0x1Ljava/lang/Object; SignaturelLjavax/lang/model/util/SimpleElementVisitor6; SourceFileMethodInfoDataSetter.javaEnclosingMethodF G  HI JKL MNO PQ RS(javax/lang/model/element/VariableElement TUV WX YZ [U \Z &)demo/codeanalyzer/common/model/MethodInfo /demo/codeanalyzer/helper/MethodInfoDataSetter$1+javax/lang/model/util/SimpleElementVisitor6-demo/codeanalyzer/helper/MethodInfoDataSetterP(Ljavax/lang/model/element/Element;Ldemo/codeanalyzer/common/model/MethodInfo;)V()V*javax/lang/model/element/ExecutableElement getParameters()Ljava/util/List;java/util/Listiterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;asType$()Ljavax/lang/model/type/TypeMirror;java/lang/ObjecttoString()Ljava/lang/String; addParameters(Ljava/lang/String;)V getReturnType setReturnType04 *+*H  N+N-"-:* *+  *+* N O4QDR4   (!"NN#$N%A&H *+,H   '$ ()*+,-./0 PK 8o 3demo/codeanalyzer/helper/MethodInfoDataSetter.class1 ?@ ? AB C D EF G HI JK LM LNO C PQ RS TU VW X TY TZ P[ \] ` Habc()VCodeLineNumberTableLocalVariableTablethis/Ldemo/codeanalyzer/helper/MethodInfoDataSetter;populateMethodInfo(Ldemo/codeanalyzer/common/model/JavaClassInfo;Lcom/sun/source/tree/MethodTree;Lcom/sun/source/util/TreePath;Lcom/sun/source/util/Trees;)Vmodifier#Ljavax/lang/model/element/Modifier;i$Ljava/util/Iterator; clazzInfo.Ldemo/codeanalyzer/common/model/JavaClassInfo; methodTree Lcom/sun/source/tree/MethodTree;pathLcom/sun/source/util/TreePath;treesLcom/sun/source/util/Trees; methodInfo+Ldemo/codeanalyzer/common/model/MethodInfo; methodNameLjava/lang/String;e"Ljavax/lang/model/element/Element; locationInfo-Ldemo/codeanalyzer/common/model/LocationInfo;visitExecutableP(Ljavax/lang/model/element/Element;Ldemo/codeanalyzer/common/model/MethodInfo;)V SourceFileMethodInfoDataSetter.java )demo/codeanalyzer/common/model/MethodInfod ef gh ijk lm ;<n opq rst uv wx!javax/lang/model/element/Modifiery z{| }~ eh /demo/codeanalyzer/helper/MethodInfoDataSetter$1 InnerClasses  -demo/codeanalyzer/helper/MethodInfoDataSetterjava/lang/Objectcom/sun/source/tree/MethodTreegetName!()Ljavax/lang/model/element/Name;toString()Ljava/lang/String;setOwningClass-(Ldemo/codeanalyzer/common/model/ClassFile;)Vcom/sun/source/util/Trees getElementB(Lcom/sun/source/util/TreePath;)Ljavax/lang/model/element/Element; javax/lang/model/element/Element getModifiers()Ljava/util/Set; java/util/Setiterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;'demo/codeanalyzer/helper/DataSetterUtil setModifiersL(Ljava/lang/String;Ldemo/codeanalyzer/common/model/BaseJavaClassModelInfo;)Vjava/lang/Stringequals(Ljava/lang/Object;)Z,demo/codeanalyzer/common/model/JavaClassInfo.demo/codeanalyzer/common/util/CodeAnalyzerUtilgetSimpleNameFromQualifiedName&(Ljava/lang/String;)Ljava/lang/String;setName(Ljava/lang/String;)VaddConstructor*(Ldemo/codeanalyzer/common/model/Method;)V addMethodgetLocationInfo(Lcom/sun/source/util/Trees;Lcom/sun/source/util/TreePath;Lcom/sun/source/tree/Tree;)Ldemo/codeanalyzer/common/model/LocationInfo;setLocationInfo,(Ldemo/codeanalyzer/common/model/Location;)V.(Ldemo/codeanalyzer/common/model/MethodInfo;)VacceptO(Ljavax/lang/model/element/ElementVisitor;Ljava/lang/Object;)Ljava/lang/Object;! /*!" #$ %& Q Y:+:*-,:  :   :***-,+:!>% &')!+(.L/Y3c4o6x8~9<=>"f L '(6#)*+,-./012 3456!t789: ;< I*Y+W! HU"7834=>_ PK 8z53demo/codeanalyzer/javacode/rule/JavaClassRule.class1 ()VCodeLineNumberTableLocalVariableTablethis/Ldemo/codeanalyzer/javacode/rule/JavaClassRule; SignatureXLdemo/codeanalyzer/common/rule/AbstractCodeRule; SourceFileJavaClassRule.java -demo/codeanalyzer/javacode/rule/JavaClassRule.demo/codeanalyzer/common/rule/AbstractCodeRule!/*     PK 8~``8demo/codeanalyzer/javacode/rule/MaxParamsForMethod.class1i 4 56 78 9: 9;< = 7>? 4 5@ AB CD @EF 4 G H I 7JKLMAX_METHOD_PARAMI ConstantValue()VCodeLineNumberTableLocalVariableTablethis4Ldemo/codeanalyzer/javacode/rule/MaxParamsForMethod;applyB(Ldemo/codeanalyzer/common/model/ClassFile;)Ljava/util/Collection; errorMessageLjava/lang/StringBuffer; errorListLjava/util/Collection;method'Ldemo/codeanalyzer/common/model/Method;i$Ljava/util/Iterator; clazzInfo*Ldemo/codeanalyzer/common/model/ClassFile;LocalVariableTypeTableILjava/util/Collection; SourceFileMaxParamsForMethod.java M NOP QRS TU VW%demo/codeanalyzer/common/model/Method XO YZjava/lang/StringBuffer [\] ^_ `a : The method ')' exceeded the maximum allowed parametersjava/util/ArrayList b\ cd ef gh2demo/codeanalyzer/javacode/rule/MaxParamsForMethod.demo/codeanalyzer/common/rule/AbstractCodeRule(demo/codeanalyzer/common/model/ClassFile getMethods()Ljava/util/Collection;java/util/Collectioniterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object; getParameterssize()IgetName()Ljava/lang/String;.demo/codeanalyzer/common/util/CodeAnalyzerUtilgetSimpleNameFromQualifiedName&(Ljava/lang/String;)Ljava/lang/String;append,(Ljava/lang/String;)Ljava/lang/StringBuffer;toStringgetLocationInfo+()Ldemo/codeanalyzer/common/model/Location;setErrorDetailsn(Ljava/lang/String;Ldemo/codeanalyzer/common/model/Location;)Ldemo/codeanalyzer/common/model/ErrorDescription;add(Ljava/lang/Object;)Z!/* ! "#$%)+M,,N-i-Z Y :+  W W- W WY:*-W~ . 7@OWc k!t"#&!>@N&'t()o*+ ,-"#./0 t(123PK 8t <demo/codeanalyzer/javacode/rule/OverrideEqualsHashCode.class1 A BC DE FG FHI J KLM NO PQ R ST DPU A BJ VW XYZ A [ \ D]^_()VCodeLineNumberTableLocalVariableTablethis8Ldemo/codeanalyzer/javacode/rule/OverrideEqualsHashCode;applyB(Ldemo/codeanalyzer/common/model/ClassFile;)Ljava/util/Collection; methodNameLjava/lang/String; paramListLjava/util/ArrayList;method'Ldemo/codeanalyzer/common/model/Method;i$Ljava/util/Iterator;errrMsgLjava/lang/StringBuffer; errorListLjava/util/Collection; clazzInfo*Ldemo/codeanalyzer/common/model/ClassFile; hasEqualsZ hasHashCodeerrorLoc)Ldemo/codeanalyzer/common/model/Location;LocalVariableTypeTableILjava/util/Collection; Signatureu(Ldemo/codeanalyzer/common/model/ClassFile;)Ljava/util/Collection; SourceFileOverrideEqualsHashCode.java  ` abc def gh ij%demo/codeanalyzer/common/model/Method kl mbjava/util/ArrayListequalsn Mo pqjava.lang.Object rs tuhashCodejava/lang/StringBufferv wx yz, : The class that overrides equals() should override hashcode() {l |} ~o6demo/codeanalyzer/javacode/rule/OverrideEqualsHashCode.demo/codeanalyzer/common/rule/AbstractCodeRule(demo/codeanalyzer/common/model/ClassFile getMethods()Ljava/util/Collection;java/util/Collectioniterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;getName()Ljava/lang/String; getParametersjava/lang/String(Ljava/lang/Object;)Zsize()Iget(I)Ljava/lang/Object;getLocationInfo+()Ldemo/codeanalyzer/common/model/Location;.demo/codeanalyzer/common/util/CodeAnalyzerUtilgetSimpleNameFromQualifiedName&(Ljava/lang/String;)Ljava/lang/String;append,(Ljava/lang/String;)Ljava/lang/StringBuffer;toStringsetErrorDetailsn(Ljava/lang/String;Ldemo/codeanalyzer/common/model/Location;)Ldemo/codeanalyzer/common/model/ErrorDescription;add! !/*"# $%&'! =>:+:q:: :  (   ,=: >PY:+WWW Y:*W"b*3?R` b!n#%')*+-./01236#p 3V()?J*+*_,-x./>0123$%4567879:; 2<=>?@PK 8<!demo/codeanalyzer/main/Main.class1C " #$ #% &'( )*+, &-. " /0 123()VCodeLineNumberTableLocalVariableTablethisLdemo/codeanalyzer/main/Main;main([Ljava/lang/String;)V controller4Ldemo/codeanalyzer/processor/CodeAnalyzerController;tLjava/lang/Throwable;args[Ljava/lang/String; SourceFile Main.java 4 56 789 :;APlease provide the java source file(s) to be verified as argument< =>9Usage: java Main {}Exiting from the program ?@2demo/codeanalyzer/processor/CodeAnalyzerController A>java/lang/Throwable Bdemo/codeanalyzer/main/Mainjava/lang/Objectjava/lang/Stringtrim()Ljava/lang/String;length()Ijava/lang/SystemoutLjava/io/PrintStream;java/io/PrintStreamprintln(Ljava/lang/String;)Vexit(I)VinvokeProcessorprintStackTrace!/*   O**2*2"  Y L+*2 L+FI .  !("0#7%?&F*I(J)N+ ?JO !PK 8e'demo/codeanalyzer/main/TestClass1.class1 ()VCodeLineNumberTableLocalVariableTablethis#Ldemo/codeanalyzer/main/TestClass1;main([Ljava/lang/String;)Vargs[Ljava/lang/String;test(III)VaIbcequals(Ljava/lang/Object;)ZobjLjava/lang/Object; SourceFileTestClass1.java !demo/codeanalyzer/main/TestClass1java/lang/Object1/*  +  I * 6 PK 8C   8demo/codeanalyzer/processor/CodeAnalyzerController.class1 #U VW XY "Z [\ ]^ X_` Ua U b 5c 5d ]ef gh i jkl gmn opq r s [bt U uvw xyzFILE_DELIMITERLjava/lang/String; ConstantValue()VCodeLineNumberTableLocalVariableTablethis4Ldemo/codeanalyzer/processor/CodeAnalyzerController;invokeProcessor(Ljava/lang/String;)VeLjava/io/IOException;compilationUnits1Ljava/lang/Iterable;task{CompilationTask InnerClasses*Ljavax/tools/JavaCompiler$CompilationTask; processorsLjava/util/LinkedList; fileNamescompilerLjavax/tools/JavaCompiler; fileManager%Ljavax/tools/StandardJavaFileManager;filesLjava/util/List;LocalVariableTypeTable3Ljava/lang/Iterable<+Ljavax/tools/JavaFileObject;>;GLjava/util/LinkedList; Ljava/util/List;getFilesAsList$(Ljava/lang/String;)Ljava/util/List;fileNamearr$[Ljava/lang/String;len$Ii$filesArr sourceFileLjava/io/File; Signature4(Ljava/lang/String;)Ljava/util/List; SourceFileCodeAnalyzerController.java '(| }~ FG  java/util/LinkedList1demo/codeanalyzer/processor/CodeAnalyzerProcessor (java/io/IOException  /;No valid source files to process. Extiting from the program ,  java/io/File '/ java/lang/StringBuilder  is not a valid file. Ignoring the file 2demo/codeanalyzer/processor/CodeAnalyzerControllerjava/lang/Object(javax/tools/JavaCompiler$CompilationTaskjavax/tools/ToolProvidergetSystemJavaCompiler()Ljavax/tools/JavaCompiler;javax/tools/JavaCompilergetStandardFileManagers(Ljavax/tools/DiagnosticListener;Ljava/util/Locale;Ljava/nio/charset/Charset;)Ljavax/tools/StandardJavaFileManager;java/util/Listsize()I#javax/tools/StandardJavaFileManagergetJavaFileObjectsFromFiles*(Ljava/lang/Iterable;)Ljava/lang/Iterable;getTask(Ljava/io/Writer;Ljavax/tools/JavaFileManager;Ljavax/tools/DiagnosticListener;Ljava/lang/Iterable;Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljavax/tools/JavaCompiler$CompilationTask;add(Ljava/lang/Object;)Z setProcessors(Ljava/lang/Iterable;)Vcall()Ljava/lang/Boolean;closejava/lang/SystemoutLjava/io/PrintStream;getLocalizedMessage()Ljava/lang/String;java/io/PrintStreamprintlnexit(I)Vjava/lang/Stringsplit'(Ljava/lang/String;)[Ljava/lang/String;exists()Zappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;toString!"#$%&'()/**+ ,-./)q M,N*+:\-:,-:Y : Y W W-:_eh*J#%()+).81A2N3W5_7e:h8j9u;x<>@+\ j 01)L238=48A49:,-;%<=w>?p@AB )L2CA49Dp@EFG)& vY M+N:-:66S2:Y:,W"Y !,** LNOP+Q6RCSOUnPtY+\ +CH%_IJZKLWMLv,-v;%n@AgNJdOPB n@EQRST7 5X6 PK 8#H 7demo/codeanalyzer/processor/CodeAnalyzerProcessor.class1 G H IJ KL G MN OP QR QST IU VW X YZ [ \] ^_ ^` ab acdetreesLcom/sun/source/util/Trees;()VCodeLineNumberTableLocalVariableTablethis3Ldemo/codeanalyzer/processor/CodeAnalyzerProcessor;init6(Ljavax/annotation/processing/ProcessingEnvironment;)Vpe3Ljavax/annotation/processing/ProcessingEnvironment;process@(Ljava/util/Set;Ljavax/annotation/processing/RoundEnvironment;)ZtpLcom/sun/source/util/TreePath; typeElement&Ljavax/lang/model/element/TypeElement; classNameLjava/lang/String; clazzInfo.Ldemo/codeanalyzer/common/model/JavaClassInfo;e"Ljavax/lang/model/element/Element;i$Ljava/util/Iterator; annotationsLjava/util/Set;roundEnvironment.Ljavax/annotation/processing/RoundEnvironment;visitor5Ldemo/codeanalyzer/processor/CodeAnalyzerTreeVisitor;LocalVariableTypeTable8Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>; Signaturei(Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;Ljavax/annotation/processing/RoundEnvironment;)Z SourceFileCodeAnalyzerProcessor.javaRuntimeVisibleAnnotations4Ljavax/annotation/processing/SupportedSourceVersion;value Ljavax/lang/model/SourceVersion; RELEASE_66Ljavax/annotation/processing/SupportedAnnotationTypes;*  "#f gh 3demo/codeanalyzer/processor/CodeAnalyzerTreeVisitori jkl mno pq rs javax/lang/model/element/Element tu vw$javax/lang/model/element/TypeElement xyz {| }~   &1demo/codeanalyzer/processor/CodeAnalyzerProcessor-javax/annotation/processing/AbstractProcessorcom/sun/source/util/TreesinstanceP(Ljavax/annotation/processing/ProcessingEnvironment;)Lcom/sun/source/util/Trees;,javax/annotation/processing/RoundEnvironmentgetRootElements()Ljava/util/Set; java/util/Setiterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;getPathB(Ljavax/lang/model/element/Element;)Lcom/sun/source/util/TreePath;scanD(Lcom/sun/source/util/TreePath;Ljava/lang/Object;)Ljava/lang/Object;getQualifiedName!()Ljavax/lang/model/element/Name;java/lang/ObjecttoString()Ljava/lang/String; getClassInfo0()Ldemo/codeanalyzer/common/model/JavaClassInfo;+demo/codeanalyzer/helper/LocationInfoSettersetLocationInfoForElements1(Ldemo/codeanalyzer/common/model/JavaClassInfo;)V,demo/codeanalyzer/common/model/ClassModelMap getInstance0()Ldemo/codeanalyzer/common/model/ClassModelMap; addClassInfo?(Ljava/lang/String;Ldemo/codeanalyzer/common/model/ClassFile;)V%demo/codeanalyzer/common/CodeAnalyzer)()Ldemo/codeanalyzer/common/CodeAnalyzer;(Ljava/lang/String;)V!/*  !"#J*+*+%& ' !$%&'8 vYN,: X  :* :-* W::-:   2 9;+<6>A?H@TAZB_CiDqEtGf 6;()H)*+T,-Z./ +F01_23v !v45v67n89: v4;<=>?@ABeCDEB[sFPK 8ʻ< < 9demo/codeanalyzer/processor/CodeAnalyzerTreeVisitor.class1[ :; : < = >? @ AB C D EF GH I J KLM clazzInfo.Ldemo/codeanalyzer/common/model/JavaClassInfo;()VCodeLineNumberTableLocalVariableTablethis5Ldemo/codeanalyzer/processor/CodeAnalyzerTreeVisitor; visitClassN(Lcom/sun/source/tree/ClassTree;Lcom/sun/source/util/Trees;)Ljava/lang/Object; classTreeLcom/sun/source/tree/ClassTree;treesLcom/sun/source/util/Trees;pathLcom/sun/source/util/TreePath; visitMethodO(Lcom/sun/source/tree/MethodTree;Lcom/sun/source/util/Trees;)Ljava/lang/Object; methodTree Lcom/sun/source/tree/MethodTree; visitVariableQ(Lcom/sun/source/tree/VariableTree;Lcom/sun/source/util/Trees;)Ljava/lang/Object; variableTree"Lcom/sun/source/tree/VariableTree;e"Ljavax/lang/model/element/Element; getClassInfo0()Ldemo/codeanalyzer/common/model/JavaClassInfo;H(Lcom/sun/source/tree/VariableTree;Ljava/lang/Object;)Ljava/lang/Object;x0x1Ljava/lang/Object;F(Lcom/sun/source/tree/MethodTree;Ljava/lang/Object;)Ljava/lang/Object;E(Lcom/sun/source/tree/ClassTree;Ljava/lang/Object;)Ljava/lang/Object; SignatureTLcom/sun/source/util/TreePathScanner; SourceFileCodeAnalyzerTreeVisitor.java ,demo/codeanalyzer/common/model/JavaClassInfo  NOP QR 5S TU $4 VWX YZ (0com/sun/source/util/Trees () $% 3demo/codeanalyzer/processor/CodeAnalyzerTreeVisitor#com/sun/source/util/TreePathScannergetCurrentPath ()Lcom/sun/source/util/TreePath;,demo/codeanalyzer/helper/ClassInfoDataSetterpopulateClassInfo(Ldemo/codeanalyzer/common/model/JavaClassInfo;Lcom/sun/source/tree/ClassTree;Lcom/sun/source/util/TreePath;Lcom/sun/source/util/Trees;)V-demo/codeanalyzer/helper/MethodInfoDataSetterpopulateMethodInfo(Ldemo/codeanalyzer/common/model/JavaClassInfo;Lcom/sun/source/tree/MethodTree;Lcom/sun/source/util/TreePath;Lcom/sun/source/util/Trees;)V getElementB(Lcom/sun/source/util/TreePath;)Ljavax/lang/model/element/Element;,demo/codeanalyzer/helper/FieldInfoDataSetterpopulateFieldInfo(Ldemo/codeanalyzer/common/model/JavaClassInfo;Lcom/sun/source/tree/VariableTree;Ljavax/lang/model/element/Element;Lcom/sun/source/util/TreePath;Lcom/sun/source/util/Trees;)V!>**Y  f*N*+-,*+,&(** !"#$%f*N*+-,*+, 579*&' !"#()}*N,- :*+-, *+, DE HJ4*+ !"# ,-.//*R A(0H *+,    1+ 23A$4H *+,    1' 23A5H *+,    1 236789PK 8(I 5demo/codeanalyzer/scanner/CodeAnalyzerProcessor.class1 G H IJ KL G MN OP QR QST IU VW X YZ [ \] ^_ ^` ab acdetreesLcom/sun/source/util/Trees;()VCodeLineNumberTableLocalVariableTablethis1Ldemo/codeanalyzer/scanner/CodeAnalyzerProcessor;init6(Ljavax/annotation/processing/ProcessingEnvironment;)Vpe3Ljavax/annotation/processing/ProcessingEnvironment;process@(Ljava/util/Set;Ljavax/annotation/processing/RoundEnvironment;)ZtpLcom/sun/source/util/TreePath; typeElement&Ljavax/lang/model/element/TypeElement; classNameLjava/lang/String; clazzInfo.Ldemo/codeanalyzer/common/model/JavaClassInfo;e"Ljavax/lang/model/element/Element;i$Ljava/util/Iterator; annotationsLjava/util/Set;roundEnvironment.Ljavax/annotation/processing/RoundEnvironment;visitor3Ldemo/codeanalyzer/scanner/CodeAnalyzerTreeVisitor;LocalVariableTypeTable8Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>; Signaturei(Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;Ljavax/annotation/processing/RoundEnvironment;)Z SourceFileCodeAnalyzerProcessor.javaRuntimeVisibleAnnotations4Ljavax/annotation/processing/SupportedSourceVersion;value Ljavax/lang/model/SourceVersion; RELEASE_66Ljavax/annotation/processing/SupportedAnnotationTypes;*  "#f gh 1demo/codeanalyzer/scanner/CodeAnalyzerTreeVisitori jkl mno pq rs javax/lang/model/element/Element tu vw$javax/lang/model/element/TypeElement xyz {| }~   &/demo/codeanalyzer/scanner/CodeAnalyzerProcessor-javax/annotation/processing/AbstractProcessorcom/sun/source/util/TreesinstanceP(Ljavax/annotation/processing/ProcessingEnvironment;)Lcom/sun/source/util/Trees;,javax/annotation/processing/RoundEnvironmentgetRootElements()Ljava/util/Set; java/util/Setiterator()Ljava/util/Iterator;java/util/IteratorhasNext()Znext()Ljava/lang/Object;getPathB(Ljavax/lang/model/element/Element;)Lcom/sun/source/util/TreePath;scanD(Lcom/sun/source/util/TreePath;Ljava/lang/Object;)Ljava/lang/Object;getQualifiedName!()Ljavax/lang/model/element/Name;java/lang/ObjecttoString()Ljava/lang/String; getClassInfo0()Ldemo/codeanalyzer/common/model/JavaClassInfo;+demo/codeanalyzer/helper/LocationInfoSettersetLocationInfoForElements1(Ldemo/codeanalyzer/common/model/JavaClassInfo;)V,demo/codeanalyzer/common/model/ClassModelMap getInstance0()Ldemo/codeanalyzer/common/model/ClassModelMap; addClassInfo?(Ljava/lang/String;Ldemo/codeanalyzer/common/model/ClassFile;)V%demo/codeanalyzer/common/CodeAnalyzer)()Ldemo/codeanalyzer/common/CodeAnalyzer;(Ljava/lang/String;)V!/*  !"#J*+*+%& ' !$%&'8 vYN,: X  :* :-* W::-:   2 9;+<6>A?H@TAZB_CiDqEtGf 6;()H)*+T,-Z./ +F01_23v !v45v67n89: v4;<=>?@ABeCDEB[sFPK 8:S8 8 7demo/codeanalyzer/scanner/CodeAnalyzerTreeVisitor.class1[ :; : < = >? @ AB C D EF GH I J KLM clazzInfo.Ldemo/codeanalyzer/common/model/JavaClassInfo;()VCodeLineNumberTableLocalVariableTablethis3Ldemo/codeanalyzer/scanner/CodeAnalyzerTreeVisitor; visitClassN(Lcom/sun/source/tree/ClassTree;Lcom/sun/source/util/Trees;)Ljava/lang/Object; classTreeLcom/sun/source/tree/ClassTree;treesLcom/sun/source/util/Trees;pathLcom/sun/source/util/TreePath; visitMethodO(Lcom/sun/source/tree/MethodTree;Lcom/sun/source/util/Trees;)Ljava/lang/Object; methodTree Lcom/sun/source/tree/MethodTree; visitVariableQ(Lcom/sun/source/tree/VariableTree;Lcom/sun/source/util/Trees;)Ljava/lang/Object; variableTree"Lcom/sun/source/tree/VariableTree;e"Ljavax/lang/model/element/Element; getClassInfo0()Ldemo/codeanalyzer/common/model/JavaClassInfo;H(Lcom/sun/source/tree/VariableTree;Ljava/lang/Object;)Ljava/lang/Object;x0x1Ljava/lang/Object;F(Lcom/sun/source/tree/MethodTree;Ljava/lang/Object;)Ljava/lang/Object;E(Lcom/sun/source/tree/ClassTree;Ljava/lang/Object;)Ljava/lang/Object; SignatureTLcom/sun/source/util/TreePathScanner; SourceFileCodeAnalyzerTreeVisitor.java ,demo/codeanalyzer/common/model/JavaClassInfo  NOP QR 5S TU $4 VWX YZ (0com/sun/source/util/Trees () $% 1demo/codeanalyzer/scanner/CodeAnalyzerTreeVisitor#com/sun/source/util/TreePathScannergetCurrentPath ()Lcom/sun/source/util/TreePath;,demo/codeanalyzer/helper/ClassInfoDataSetterpopulateClassInfo(Ldemo/codeanalyzer/common/model/JavaClassInfo;Lcom/sun/source/tree/ClassTree;Lcom/sun/source/util/TreePath;Lcom/sun/source/util/Trees;)V-demo/codeanalyzer/helper/MethodInfoDataSetterpopulateMethodInfo(Ldemo/codeanalyzer/common/model/JavaClassInfo;Lcom/sun/source/tree/MethodTree;Lcom/sun/source/util/TreePath;Lcom/sun/source/util/Trees;)V getElementB(Lcom/sun/source/util/TreePath;)Ljavax/lang/model/element/Element;,demo/codeanalyzer/helper/FieldInfoDataSetterpopulateFieldInfo(Ldemo/codeanalyzer/common/model/JavaClassInfo;Lcom/sun/source/tree/VariableTree;Ljavax/lang/model/element/Element;Lcom/sun/source/util/TreePath;Lcom/sun/source/util/Trees;)V!>**Y  f*N*+-,*+,&(** !"#$%f*N*+-,*+, 579*&' !"#()}*N,- :*+-, *+, DE HJ4*+ !"# ,-.//*R A(0H *+,    1+ 23A$4H *+,    1' 23A5H *+,    1 236789PK 8j<,demo/papa/common/jaxbgen/ObjectFactory.class1   ()VCode createRules"()Ldemo/papa/common/jaxbgen/Rules; createRule!()Ldemo/papa/common/jaxbgen/Rule;RuntimeVisibleAnnotations'Ljavax/xml/bind/annotation/XmlRegistry;  demo/papa/common/jaxbgen/Rulesdemo/papa/common/jaxbgen/Rule&demo/papa/common/jaxbgen/ObjectFactoryjava/lang/Object!  *  Y  YPK 8ﬡ#demo/papa/common/jaxbgen/Rule.class1"    !ruleNameLjava/lang/String;RuntimeVisibleAnnotations(Ljavax/xml/bind/annotation/XmlAttribute; ruleClass()VCode getRuleName()Ljava/lang/String; setRuleName(Ljava/lang/String;)V getRuleClass setRuleClass+Ljavax/xml/bind/annotation/XmlAccessorType;value)Ljavax/xml/bind/annotation/XmlAccessType;FIELD#Ljavax/xml/bind/annotation/XmlType;name*Ljavax/xml/bind/annotation/XmlRootElement;rule  demo/papa/common/jaxbgen/Rulejava/lang/Object!     * * *+ * *+essPK 8ݵ2$demo/papa/common/jaxbgen/Rules.class1!    ruleLjava/util/List; Signature1Ljava/util/List;()VCodegetRule()Ljava/util/List;3()Ljava/util/List;RuntimeVisibleAnnotations+Ljavax/xml/bind/annotation/XmlAccessorType;value)Ljavax/xml/bind/annotation/XmlAccessType;FIELD#Ljavax/xml/bind/annotation/XmlType;name propOrder*Ljavax/xml/bind/annotation/XmlRootElement;rules java/util/ArrayListdemo/papa/common/jaxbgen/Rulesjava/lang/Object!    * #**Y* 'es[ssPK 8 AMETA-INF/PK 8홾+META-INF/MANIFEST.MFPK 8ARdemo/PK 8Audemo/codeanalyzer/PK 8Ademo/codeanalyzer/common/PK 8!Ademo/codeanalyzer/common/jaxbgen/PK 8Ademo/codeanalyzer/common/model/PK 8AXdemo/codeanalyzer/common/rule/PK 8Ademo/codeanalyzer/common/util/PK 8Ademo/codeanalyzer/helper/PK 8Ademo/codeanalyzer/javacode/PK 8 A@demo/codeanalyzer/javacode/rule/PK 8A~demo/codeanalyzer/main/PK 8Ademo/codeanalyzer/processor/PK 8Ademo/codeanalyzer/scanner/PK 8 A%demo/papa/PK 8AMdemo/papa/common/PK 8A|demo/papa/common/jaxbgen/PK 8i +demo/codeanalyzer/common/CodeAnalyzer.classPK 8f4demo/codeanalyzer/common/jaxbgen/ObjectFactory.classPK 8&8LL+demo/codeanalyzer/common/jaxbgen/Rule.classPK 8"I,vdemo/codeanalyzer/common/jaxbgen/Rules.classPK 8T/ldemo/codeanalyzer/common/model/Annotation.classPK 8.)  3fdemo/codeanalyzer/common/model/AnnotationInfo.classPK 8UOJ%%7demo/codeanalyzer/common/model/BaseJavaClassModel.classPK 8 ;="demo/codeanalyzer/common/model/BaseJavaClassModelInfo.classPK 8X.\/demo/codeanalyzer/common/model/ClassFile.classPK 8S2}3demo/codeanalyzer/common/model/ClassModelMap.classPK 8TE159demo/codeanalyzer/common/model/ErrorDescription.classPK 8 z9*=demo/codeanalyzer/common/model/Field.classPK 8,=.?demo/codeanalyzer/common/model/FieldInfo.classPK 8&&2Edemo/codeanalyzer/common/model/JavaClassInfo.classPK 8q,EE3Zdemo/codeanalyzer/common/model/JavaSourceTree.classPK 8CGMM7 \demo/codeanalyzer/common/model/JavaSourceTreeInfo.classPK 8K-ademo/codeanalyzer/common/model/Location.classPK 8/1bdemo/codeanalyzer/common/model/LocationInfo.classPK 8f+gdemo/codeanalyzer/common/model/Method.classPK 8V8{ { /'idemo/codeanalyzer/common/model/MethodInfo.classPK 8$  3tdemo/codeanalyzer/common/model/SourceTreeInfo.classPK 8rgo4Lzdemo/codeanalyzer/common/rule/AbstractCodeRule.classPK 8) C0Mdemo/codeanalyzer/common/rule/JavaCodeRule.classPK 8u u .demo/codeanalyzer/common/rule/RuleLoader.classPK 8nhug g /ydemo/codeanalyzer/common/rule/RulesEngine.classPK 8`9-demo/codeanalyzer/common/util/CodeAnalyzerConstants.classPK 8Ƣ 45demo/codeanalyzer/common/util/CodeAnalyzerUtil.classPK 83)demo/codeanalyzer/helper/AnnotationDataSetter.classPK 8`2demo/codeanalyzer/helper/ClassInfoDataSetter.classPK 8> > -demo/codeanalyzer/helper/DataSetterUtil.classPK 8 >Q Q 2demo/codeanalyzer/helper/FieldInfoDataSetter.classPK 8s219demo/codeanalyzer/helper/LocationInfoSetter.classPK 8¸[##5,demo/codeanalyzer/helper/MethodInfoDataSetter$1.classPK 8o 3demo/codeanalyzer/helper/MethodInfoDataSetter.classPK 8z53|demo/codeanalyzer/javacode/rule/JavaClassRule.classPK 8~``8demo/codeanalyzer/javacode/rule/MaxParamsForMethod.classPK 8t <Xdemo/codeanalyzer/javacode/rule/OverrideEqualsHashCode.classPK 8<!:demo/codeanalyzer/main/Main.classPK 8e' demo/codeanalyzer/main/TestClass1.classPK 8C   8demo/codeanalyzer/processor/CodeAnalyzerController.classPK 8#H 7&demo/codeanalyzer/processor/CodeAnalyzerProcessor.classPK 8ʻ< < 94demo/codeanalyzer/processor/CodeAnalyzerTreeVisitor.classPK 8(I 5@demo/codeanalyzer/scanner/CodeAnalyzerProcessor.classPK 8:S8 8 7Mdemo/codeanalyzer/scanner/CodeAnalyzerTreeVisitor.classPK 8j<,Zdemo/papa/common/jaxbgen/ObjectFactory.classPK 8ﬡ#\demo/papa/common/jaxbgen/Rule.classPK 8ݵ2$`demo/papa/common/jaxbgen/Rules.classPKAAOc