├── .gitattributes ├── .gitignore ├── .settings └── gradle │ └── org.springsource.ide.eclipse.gradle.core.prefs ├── LICENSE ├── README.md ├── build.gradle ├── gradle.properties ├── gradle ├── publish-maven.gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── settings.gradle ├── springloaded ├── .classpath ├── .project ├── .settings │ ├── gradle │ │ ├── org.springsource.ide.eclipse.gradle.core.prefs │ │ └── org.springsource.ide.eclipse.gradle.refresh.prefs │ ├── org.eclipse.jdt.core.prefs │ └── org.eclipse.jdt.ui.prefs ├── LICENSES │ ├── LICENSE │ └── notice.txt ├── build.gradle ├── gradle │ └── wrapper │ │ ├── gradle-wrapper.jar │ │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── lib │ ├── asm-3.2.jar │ ├── asm-5.0.2-sources.zip │ ├── asm-5.0.2.jar │ ├── asm-5.0_BETA-sources.zip │ ├── asm-5.0_BETA.jar │ ├── asm-tree-3.2.jar │ ├── asm-tree-5.0.2.jar │ └── asm-tree-5.0_BETA.jar ├── logging.properties ├── notes.md ├── springloaded tests (including generated tests - slow!).launch ├── springloaded tests (no generated tests) (1.8).launch ├── springloaded tests (no generated tests).launch └── src │ ├── main │ └── java │ │ ├── META-INF │ │ └── MANIFEST.MF │ │ └── org │ │ └── springsource │ │ └── loaded │ │ ├── AbstractMember.java │ │ ├── AnyTypePattern.java │ │ ├── Asserts.java │ │ ├── C.java │ │ ├── ChildClassLoader.java │ │ ├── ClassRenamer.java │ │ ├── ConstantPoolChecker.java │ │ ├── ConstantPoolChecker2.java │ │ ├── ConstantPoolScanner.java │ │ ├── Constants.java │ │ ├── ConstructorCopier.java │ │ ├── CurrentLiveVersion.java │ │ ├── DispatcherBuilder.java │ │ ├── EmptyClassVisitor.java │ │ ├── ExactTypePattern.java │ │ ├── ExecutorBuilder.java │ │ ├── FieldDelta.java │ │ ├── FieldMember.java │ │ ├── FieldReaderWriter.java │ │ ├── FileChangeListener.java │ │ ├── GlobalConfiguration.java │ │ ├── ISMgr.java │ │ ├── IncrementalTypeDescriptor.java │ │ ├── InterfaceExtractor.java │ │ ├── IsReloadableTypePlugin.java │ │ ├── LoadtimeInstrumentationPlugin.java │ │ ├── Log.java │ │ ├── MethodCopier.java │ │ ├── MethodDelta.java │ │ ├── MethodInvokerRewriter.java │ │ ├── MethodMember.java │ │ ├── NameRegistry.java │ │ ├── Plugin.java │ │ ├── Plugins.java │ │ ├── PrefixTypePattern.java │ │ ├── QuickVisitor.java │ │ ├── RTH.java │ │ ├── ReflectionFieldReaderWriter.java │ │ ├── ReloadEventProcessorPlugin.java │ │ ├── ReloadException.java │ │ ├── ReloadableType.java │ │ ├── SSMgr.java │ │ ├── SpringLoaded.java │ │ ├── SystemClassReflectionInvestigator.java │ │ ├── SystemClassReflectionRewriter.java │ │ ├── SystemPropertyConfiguredIsReloadableTypePlugin.java │ │ ├── TypeDelta.java │ │ ├── TypeDescriptor.java │ │ ├── TypeDescriptorExtractor.java │ │ ├── TypeDiffComputer.java │ │ ├── TypePattern.java │ │ ├── TypeRegistry.java │ │ ├── TypeRewriter.java │ │ ├── UnableToLoadClassException.java │ │ ├── UnableToReloadEventProcessorPlugin.java │ │ ├── Utils.java │ │ ├── __DynamicallyDispatchable.java │ │ ├── agent │ │ ├── CglibPlugin.java │ │ ├── CglibPluginCapturing.java │ │ ├── ClassPreProcessorAgentAdapter.java │ │ ├── ClassVisitingConstructorAppender.java │ │ ├── FalseReturner.java │ │ ├── FileSystemWatcher.java │ │ ├── FileSystemWatcherInterface.java │ │ ├── GrailsPlugin.java │ │ ├── GroovyPlugin.java │ │ ├── Impossible.java │ │ ├── JVMPlugin.java │ │ ├── MacOsFileSystemWatcher.java │ │ ├── ModifyDefineInClassLoaderForClassArtifactsType.java │ │ ├── NonFinalizer.java │ │ ├── PluginUtils.java │ │ ├── PollingFileSystemWatcher.java │ │ ├── ReloadDecision.java │ │ ├── ReloadableFileChangeListener.java │ │ ├── SpringLoadedAgent.java │ │ ├── SpringLoadedPreProcessor.java │ │ └── SpringPlugin.java │ │ ├── infra │ │ ├── SLFormatter.java │ │ └── UsedByGeneratedCode.java │ │ ├── jvm │ │ └── JVM.java │ │ ├── pluginhelpers │ │ └── EmptyCtor.java │ │ ├── ri │ │ ├── DynamicLookup.java │ │ ├── Exceptions.java │ │ ├── FieldLookup.java │ │ ├── GetDeclaredFieldLookup.java │ │ ├── GetDeclaredMethodLookup.java │ │ ├── GetFieldLookup.java │ │ ├── GetMethodLookup.java │ │ ├── GetMethodsLookup.java │ │ ├── Invoker.java │ │ ├── JavaClassMethodProvider.java │ │ ├── JavaMethodCache.java │ │ ├── JavaMethodInvoker.java │ │ ├── MethodProvider.java │ │ ├── OriginalClassInvoker.java │ │ ├── ReflectiveInterceptor.java │ │ ├── ReloadableTypeMethodProvider.java │ │ ├── ReloadedTypeInvoker.java │ │ ├── StaticLookup.java │ │ └── TypeDescriptorMethodProvider.java │ │ ├── support │ │ ├── ConcurrentWeakIdentityHashMap.java │ │ └── Java8.java │ │ └── test │ │ └── infra │ │ ├── ClassPrinter.java │ │ └── MethodPrinter.java │ └── test │ └── java │ └── org │ └── springsource │ └── loaded │ ├── perf │ └── test │ │ ├── PerformanceTests.java │ │ └── WeavingPerformanceTests.java │ ├── ri │ └── test │ │ ├── AbstractReflectionTests.java │ │ ├── BridgeMethodTest.java │ │ ├── ClassGetAnnotationTest.java │ │ ├── ClassGetAnnotationsTest.java │ │ ├── ClassGetConstructorTest.java │ │ ├── ClassGetConstructorsTest.java │ │ ├── ClassGetDeclaredMethodsTest.java │ │ ├── ClassGetFieldTest.java │ │ ├── ClassGetFieldsTest.java │ │ ├── ClassGetMethodTest.java │ │ ├── ClassGetMethodsTest.java │ │ ├── ClassGetModifiersTest.java │ │ ├── ClassNewInstanceTest.java │ │ ├── ClassReflectionTests.java │ │ ├── ConstructorAdHocTest.java │ │ ├── ConstructorGetAnnotationTest.java │ │ ├── ConstructorGetAnnotationsTest.java │ │ ├── ConstructorNewInstanceTest.java │ │ ├── FieldAdHocTest.java │ │ ├── FieldGetAndSetTest.java │ │ ├── FieldGetAnnotationTest.java │ │ ├── FieldGetAnnotationsTest.java │ │ ├── FieldSetAccessTest.java │ │ ├── MethodGenericsAndVarArgsTest.java │ │ ├── MethodGetAnnotationTest.java │ │ ├── MethodGetAnnotationsTest.java │ │ ├── MethodGetParamAnnotationsTest.java │ │ └── MethodInvokeTest.java │ ├── test │ ├── CatcherTests.java │ ├── CglibProxyTests.java │ ├── ClassRenamerTests.java │ ├── CodeGenerationTests.java │ ├── ConstantPoolScannerTests.java │ ├── CrossLoaderTests.java │ ├── DebuggingTests.java │ ├── DispatcherBuilderTests.java │ ├── EnumTests.java │ ├── ExecutorBuilderTests.java │ ├── FieldReloadingTests.java │ ├── GroovyBenchmarkTests.java │ ├── GroovyTests.java │ ├── IncrementalTypeDescriptorTests.java │ ├── InnerClassesTests.java │ ├── InterfaceExtractorTest.java │ ├── Java8Tests.java │ ├── JavaMicroBenchmarkTests.java │ ├── MethodInvokerRewriterTests.java │ ├── NameRegistryTests.java │ ├── PluginTests.java │ ├── PollingFileSystemWatcherTests.java │ ├── ProxyTests.java │ ├── ReflectiveReflectionTests.java │ ├── ReloadableTypeTests.java │ ├── ReloadingJVM.java │ ├── ReloadingJVMCommandProcess.java │ ├── ScenarioTests.java │ ├── SpringLoadedTests.java │ ├── SpringLoadedTestsInSeparateJVM.java │ ├── SuperDispatcherTests.java │ ├── SystemClassReflectionRewriterTests.java │ ├── Target.java │ ├── TestController.java │ ├── TestInfrastructureTests.java │ ├── TestUtils.java │ ├── TypeDeltaTests.java │ ├── TypeDescriptorExtractorTests.java │ ├── TypeDescriptorTests.java │ ├── TypePatternTests.java │ ├── TypeRegistryTests.java │ ├── TypeRewriterTests.java │ ├── UtilsTests.java │ └── infra │ │ ├── FakeMethodVisitor.java │ │ ├── IResult.java │ │ ├── Result.java │ │ ├── ResultException.java │ │ ├── RewriteReflectUtilsDefineClass.java │ │ ├── SubLoader.java │ │ ├── SuperLoader.java │ │ ├── TestClassLoader.java │ │ └── TestClassloaderWithRewriting.java │ └── testgen │ ├── ChoiceGenerationTest.java │ ├── ExecutionContextsTest.java │ ├── ExploreAllChoicesRunner.java │ ├── FieldGetMethod.java │ ├── GeneratedTest.java │ ├── GenerativeSpringLoadedTest.java │ ├── GenerativeTest.java │ ├── IChoiceGenerator.java │ ├── IClassProvider.java │ ├── InvokerGenerator.java │ ├── JustJavaClassProvider.java │ ├── PredictResult.java │ ├── RejectedChoice.java │ ├── SignatureFinder.java │ ├── SpringLoadedClassProvider.java │ └── SystematicChoiceGenerator.java ├── testdata-aspectj ├── .classpath ├── .project ├── build.gradle └── src │ └── main │ └── java │ └── data │ ├── AnAspect.java │ └── AspectReceiver.java ├── testdata-groovy ├── .classpath ├── .project ├── .settings │ ├── gradle │ │ └── org.springsource.ide.eclipse.gradle.core.prefs │ ├── org.eclipse.jdt.core.prefs │ ├── org.eclipse.jdt.groovy.core.prefs │ └── org.eclipse.jdt.ui.prefs ├── LICENSES │ └── LICENSE ├── build.gradle ├── groovy-1.8.2.jar ├── groovy-all-1.8.6.jar └── src │ ├── clinitg │ ├── Four.groovy │ ├── Four2.groovy │ ├── FourHelper.groovy │ ├── One.groovy │ ├── One2.groovy │ ├── Three.groovy │ ├── Three2.groovy │ ├── Three3.groovy │ ├── Two.groovy │ └── Two2.groovy │ ├── controller │ ├── Controller.groovy │ ├── Controller2.groovy │ └── Controller3.groovy │ ├── enums │ ├── ExtensibleEnum.groovy │ ├── ExtensibleEnum3.groovy │ ├── ExtensibleEnumB.groovy │ ├── RunnerA.java │ ├── RunnerB.java │ ├── WhatAnEnum.groovy │ ├── WhatAnEnum2.groovy │ ├── WhatAnEnum3.groovy │ ├── WhatAnEnumB.groovy │ └── WhatAnEnumB2.groovy │ ├── remote │ ├── Code.groovy │ ├── FakeClosure.java │ └── SerializeG.java │ └── simple │ ├── Back.groovy │ ├── Back2.groovy │ ├── Basic.groovy │ ├── Basic2.groovy │ ├── Basic3.groovy │ ├── Basic4.groovy │ ├── BasicB.groovy │ ├── BasicB2.groovy │ ├── BasicC.groovy │ ├── BasicC2.groovy │ ├── BasicD.groovy │ ├── BasicD2.groovy │ ├── BasicDTarget.groovy │ ├── BasicDTarget2.groovy │ ├── BasicE.groovy │ ├── BasicE2.groovy │ ├── BasicETarget.groovy │ ├── BasicETarget2.groovy │ ├── BasicF.groovy │ ├── BasicFTarget.groovy │ ├── BasicFTarget2.groovy │ ├── BasicFTarget4.groovy │ ├── BasicG.groovy │ ├── BasicGTarget.groovy │ ├── BasicGTarget2.groovy │ ├── BasicH.groovy │ ├── BasicWithClosure.groovy │ ├── BasicWithClosure2.groovy │ ├── BasicWithClosure3.groovy │ ├── BasicWithClosureB.groovy │ ├── BasicWithClosureB2.groovy │ ├── BasicWithClosureB3.groovy │ ├── BasicWithClosureC.groovy │ ├── BasicWithClosureC2.groovy │ ├── BasicWithClosureD.groovy │ ├── BasicWithClosureD2.groovy │ ├── BasicWithClosureE.groovy │ ├── BasicWithClosureE2.groovy │ ├── BasicWithClosureE3.groovy │ ├── CopyOfBasicD.groovy │ ├── Front.groovy │ ├── LFront.groovy │ ├── LFront2.groovy │ ├── SelfReflector.groovy │ ├── Values.groovy │ └── Values2.groovy ├── testdata-java8 ├── .classpath ├── .gradle │ └── 1.7 │ │ └── taskArtifacts │ │ ├── cache.properties │ │ ├── cache.properties.lock │ │ ├── fileHashes.bin │ │ ├── fileSnapshots.bin │ │ ├── outputFileStates.bin │ │ └── taskArtifacts.bin ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── build.gradle ├── build.sh └── src │ └── main │ └── java │ ├── basic │ ├── DefaultMethodsC1A.java │ ├── DefaultMethodsC2A.java │ ├── DefaultMethodsC2A2.java │ ├── DefaultMethodsI1A.java │ ├── DefaultMethodsI1A2.java │ ├── DefaultMethodsI2A.java │ ├── DefaultMethodsI2A2.java │ ├── FirstClass.class │ ├── FirstClass.java │ ├── LambdaA.java │ ├── LambdaA2.java │ ├── LambdaB.java │ ├── LambdaB2.java │ ├── LambdaC.java │ ├── LambdaC2.java │ ├── LambdaD.java │ ├── LambdaD2.java │ ├── LambdaE.java │ ├── LambdaE2.java │ ├── LambdaF.java │ ├── LambdaF2.java │ ├── LambdaG.java │ ├── LambdaG2.java │ ├── LambdaH.java │ ├── LambdaI.java │ ├── LambdaI2.java │ ├── LambdaJ.java │ ├── LambdaJ2.java │ ├── LambdaL.java │ ├── LambdaL2.java │ ├── LambdaM.java │ ├── LambdaM2.java │ ├── LambdaN.java │ ├── LambdaO.java │ ├── LambdaO2.java │ ├── StaticMethodReference.java │ ├── StaticMethodReference2.java │ ├── StreamA.java │ ├── StreamA2.java │ ├── StreamB.java │ ├── StreamB2.java │ ├── StreamBB.java │ ├── StreamBB2.java │ ├── StreamBBFoo.java │ ├── StreamC.java │ └── StreamC2.java │ └── bugs │ ├── Issue104.java │ └── Issue173.java ├── testdata-plugin ├── .classpath ├── .project ├── .settings │ ├── gradle │ │ └── org.springsource.ide.eclipse.gradle.core.prefs │ └── org.eclipse.jdt.core.prefs ├── LICENSES │ └── LICENSE ├── build.gradle └── src │ └── main │ └── java │ └── com │ └── test │ └── plugins │ └── ReloadEventProcessorPlugin1.java ├── testdata-subloader ├── .classpath ├── .project ├── .settings │ ├── gradle │ │ └── org.springsource.ide.eclipse.gradle.core.prefs │ └── org.eclipse.jdt.core.prefs ├── LICENSES │ └── LICENSE ├── build.gradle └── src │ └── main │ └── java │ ├── issue34 │ ├── Implementation2.java │ ├── Implementation3.java │ └── Interface2.java │ ├── subassociatedtypes │ ├── CB.java │ ├── IB.java │ └── IB2.java │ └── subpkg │ ├── Bottom.java │ ├── Bottom002.java │ ├── Bottom003.java │ ├── BottomB.java │ ├── BottomB002.java │ ├── Controller.java │ ├── Controller002.java │ ├── Invoker.java │ ├── Invoker002.java │ ├── InvokerB.java │ ├── InvokerB002.java │ ├── InvokerC.java │ ├── InvokerC002.java │ ├── InvokerC003.java │ ├── InvokerD.java │ ├── ProxyBuilder.java │ ├── ProxyTestcase.java │ └── Subby.java ├── testdata-superloader ├── .classpath ├── .project ├── .settings │ ├── gradle │ │ └── org.springsource.ide.eclipse.gradle.core.prefs │ └── org.eclipse.jdt.core.prefs ├── LICENSES │ └── LICENSE ├── build.gradle └── src │ └── main │ └── java │ ├── associatedtypes │ ├── CM.java │ ├── CT.java │ ├── IM.java │ ├── IM2.java │ ├── IT.java │ └── IT2.java │ ├── grails │ ├── Implementation1.java │ ├── Interface1.java │ └── Top.java │ └── superpkg │ ├── MyMethodInterceptor.java │ ├── Simple.java │ ├── Target.java │ ├── Target002.java │ ├── TargetB.java │ ├── TargetB002.java │ ├── TargetC.java │ ├── TargetC002.java │ ├── TargetD.java │ ├── TargetD002.java │ ├── TargetImplC.java │ ├── TargetImplC002.java │ ├── Top.java │ ├── Top002.java │ ├── Top003.java │ ├── TopB.java │ └── TopB002.java └── testdata ├── .classpath ├── .externalToolBuilders └── org.eclipse.jdt.core.javabuilder.launch ├── .project ├── .settings ├── gradle │ └── org.springsource.ide.eclipse.gradle.core.prefs └── org.eclipse.jdt.core.prefs ├── LICENSES └── LICENSE ├── build.gradle ├── code.jar ├── codejar ├── A.java └── readme.txt ├── jars ├── README ├── grailsplugins │ ├── build.sh │ └── grailsplugins.jar ├── one │ ├── Bar.java │ ├── Foo.class │ ├── Foo.java │ ├── Wibble.java │ ├── bar.jar │ ├── build.sh │ ├── foo.jar │ └── test │ │ ├── Bar.class │ │ └── Wibble.class └── two │ ├── Bar.java │ ├── Foo.class │ ├── Foo.java │ ├── Wibble.java │ ├── bar.jar │ ├── build.sh │ ├── foo.jar │ └── test │ ├── Bar.class │ └── Wibble.class ├── lib ├── cglib-nodep-2.2.jar └── spring-expression-4.0.0.M3.jar ├── meta1 └── META-INF │ └── services │ └── org.springsource.reloading.agent.Plugins ├── meta2 └── META-INF │ └── services │ └── org.springsource.reloading.agent.Plugins ├── meta3 └── META-INF │ └── services │ └── org.springsource.reloading.agent.Plugins └── src └── main └── java ├── abs ├── AbsImpl.java ├── AbsImpl2.java ├── Impl.java ├── Impl2.java └── Intface.java ├── accessors ├── DefaultFields.java ├── DefaultFieldsSub.java ├── PrivateFields.java └── ProtectedFields.java ├── annos ├── AnnotatedType.java ├── AnnotatedType2.java ├── Foo2.java ├── Play.java ├── Play2.java ├── SimpleAnnotation.java └── SimpleAnnotation2.java ├── baddata ├── One.java ├── OneA.java └── OneB.java ├── basic ├── Basic.java ├── Basic002.java ├── Basic003.java ├── Basic004.java ├── Basic005.java ├── BasicB.java ├── BasicC.java ├── Bottom.java ├── Bottom2.java ├── Top.java └── Top2.java ├── benchmarks └── MethodInvoking.java ├── builder ├── DispatcherTestOne.java ├── DispatcherTestOne002.java └── DispatcherTestOne003.java ├── catchers ├── A.java ├── B.java ├── B2.java ├── Bottom.java ├── Finality.java ├── Middle.java ├── Runner.java ├── Runner2.java ├── SimpleCatcher.java ├── Top.java ├── X.java ├── Y.java ├── Y2.java ├── Z.java ├── play.class └── play.java ├── clinit ├── One.java ├── One2.java ├── Three.java ├── Three2.java ├── Three3.java ├── Two.java └── Two2.java ├── codegen └── Simple.java ├── com └── demo │ ├── Bar.java │ └── Foo.java ├── common ├── Anno.java └── Marker.java ├── ctors ├── A.java ├── B.java ├── B2.java ├── Callee.java ├── Callee2.java ├── CalleeB.java ├── CalleeB2.java ├── CalleeSuperB.java ├── CalleeSuperB2.java ├── Caller.java ├── Caller2.java ├── CallerB.java ├── CallerB2.java ├── Default.java ├── Finals.java ├── Finals2.java ├── JR.java ├── JR2.java ├── One.java ├── One2.java ├── Setter.java ├── Setter2.java ├── Setter3.java ├── SuperThree.java ├── SuperThree2.java ├── Three.java ├── Three2.java ├── Two.class ├── Two.java ├── Two2.java ├── Utils.java ├── V.java ├── V2.java ├── V3.java ├── XX.java └── XX2.java ├── data ├── Anno.java ├── AnnotatedClazz.java ├── Apple.java ├── Apple002.java ├── Apple003.java ├── Banana.java ├── BottomType.java ├── ComplexClass.java ├── DemoMethods.java ├── DemoMethods2.java ├── FieldsB.java ├── Foo.java ├── Fruity.java ├── Fruity002.java ├── Fruity003.java ├── HelloWorld.java ├── HelloWorld002.java ├── HelloWorldClinit.java ├── HelloWorldClinit002.java ├── HelloWorldFields.java ├── HelloWorldFields002.java ├── HelloWorldPrimitive.java ├── HelloWorldPrimitive002.java ├── HelloWorldStaticFields.java ├── HelloWorldStaticFields002.java ├── Kiwi.java ├── MiddleType.java ├── Orange.java ├── Orange002.java ├── Pear.java ├── Plum.java ├── Plum002.java ├── Reflector.java ├── Runner.java ├── ScenarioA.java ├── ScenarioA002.java ├── ScenarioA003.java ├── ScenarioA004.java ├── ScenarioB.java ├── ScenarioB002.java ├── ScenarioB003.java ├── Simple.java ├── SimpleClass.java ├── SimpleClass002.java ├── SimpleClassCaller.java ├── SimpleClassFour.java ├── SimpleClassFour002.java ├── SimpleClassThree.java ├── SimpleClassTwo.java ├── SomeConstructors.java ├── SomeConstructors002.java ├── SomeConstructors2.java ├── SomeFields.java ├── StaticFieldsB.java ├── TopType.java └── Wiggle.java ├── dd ├── Middle.java └── Top.java ├── differs ├── Annot.java ├── Annot2.java ├── AnnotFields.java ├── AnnotFields2.java ├── AnnotFieldsTwo.java ├── AnnotFieldsTwo2.java ├── DiffOne.java ├── DiffOneX.java ├── DiffOneY.java ├── DiffOneZ.java ├── DiffThree.java ├── DiffThreeX.java ├── DiffThreeY.java ├── DiffTwo.java ├── DiffTwoX.java ├── DiffTwoY.java └── DiffTwoZ.java ├── dispatcher ├── C.java ├── CallC.java ├── Staticmethod.java └── StaticmethodCaller.java ├── enumtests ├── Colours.java ├── Colours2.java ├── ColoursB.java ├── ColoursB2.java ├── ColoursB3.java ├── ColoursC.java ├── ColoursC2.java ├── ColoursD.java ├── ColoursD2.java ├── ColoursE.java ├── ColoursE2.java ├── Intface.java ├── Intface3.java ├── RunnerA.java ├── RunnerB.java ├── RunnerB3.java ├── RunnerC.java ├── RunnerD.java ├── RunnerD2.java ├── RunnerE.java └── RunnerE2.java ├── example ├── MyMethodInterceptor.java ├── ProxyBuilder.java ├── ProxyTestcase.java ├── ProxyTestcase2.java ├── Simple.java └── Simple2.java ├── executor ├── A.java ├── A2.java ├── B.java ├── B2.java ├── C.java ├── I.java ├── I2.java ├── TestOne.java └── TestOne2.java ├── fields ├── A.java ├── Aa.java ├── Add.java ├── Add002.java ├── AddB.java ├── AddB002.java ├── B.java ├── B2.java ├── Ba.java ├── Ba2.java ├── C.java ├── Ca.java ├── E.java ├── E2.java ├── Ia.java ├── Ic.java ├── Ja.java ├── Ka.java ├── Ka002.java ├── NotReloadable.java ├── One.java ├── P.java ├── Pa.java ├── Q.java ├── Q2.java ├── Qa.java ├── Qa2.java ├── Qc.java ├── Qc2.java ├── R.java ├── Ra.java ├── Rc.java ├── ReloadableBottom.java ├── ReloadableTop.java ├── ReloadableTop002.java ├── Removed.java ├── Removed002.java ├── S.java ├── S2.java ├── T.java ├── T2.java ├── Two.java ├── TwoSlot.java ├── TwoSlot2.java ├── TypeChanging.java ├── TypeChanging2.java ├── X.java ├── X002.java ├── Y.java ├── Y002.java ├── Ya.java ├── Ya002.java ├── Yb.java ├── Yb002.java ├── Z.java ├── Za.java ├── Za002.java └── Zb.java ├── foo ├── Controller.java ├── Controller2.java ├── ControllerB.java ├── ControllerB2.java ├── ControllerC.java ├── ControllerC2.java ├── ControllerD.java ├── ControllerD2.java ├── SubControllerB.java └── SubControllerB2.java ├── github10 └── Code.java ├── grails ├── Top.java ├── TopB.java ├── TopC.java ├── TopD.java ├── plugins │ ├── A.java │ ├── B.java │ └── B2.java └── plugins2 │ └── C.java ├── inheritance ├── A.java ├── A002.java ├── B.java └── C.java ├── inners ├── Four.java ├── Four2.java ├── One.java ├── One2.java ├── Outer.java ├── Outer2.java ├── Three.java ├── Three2.java ├── Two.java ├── Two2.java └── TwoDefault.java ├── interfacerewriting ├── TheImpl.java ├── TheImpl002.java ├── TheInterface.java ├── TheInterface002.java ├── TheRunner.java └── TheRunner002.java ├── interfaces ├── Runner.java ├── TheImplementation.java ├── TheImplementation002.java ├── TheImplementation003.java ├── TheImplementation004.java ├── TheInterface.java └── TheInterface004.java ├── invokespecial ├── A.java ├── A002.java ├── Able.java ├── Able2.java ├── Able2002.java ├── B.java ├── B002.java ├── C.java ├── ContainsPrivateCalls.java ├── ContainsPrivateCalls002.java ├── ContainsPrivateCalls003.java ├── ContainsPrivateCallsB.java ├── ContainsPrivateCallsB002.java ├── P.java ├── P002.java ├── Q.java ├── R.java ├── Simple.java ├── Simple2.java ├── X.java ├── X002.java ├── XX.java ├── Y.java ├── Y002.java ├── Y003.java ├── YY.java ├── YY002.java ├── Z.java └── Z002.java ├── invokestatic ├── A.java ├── A2.java ├── B.java ├── B2.java └── issue4 │ ├── A.java │ ├── AA.java │ ├── AAA.java │ ├── AB.java │ ├── B.java │ ├── BB.java │ ├── BBB.java │ ├── BBBB.java │ └── BBBBB.java ├── invokevirtual ├── A.java ├── A2.java ├── AA.java ├── AA2.java ├── B.java ├── B2.java ├── BB.java ├── BB2.java ├── BB3.java ├── CC.java ├── X.java ├── XX.java ├── Y.java ├── Y002.java ├── YY.java ├── YY002.java └── ZZ.java ├── iri ├── Ctor.java ├── FormattingHelper.java ├── JLCGetAnnotation.java ├── JLCGetAnnotation2.java ├── JLCGetAnnotations.java ├── JLCGetAnnotations2.java ├── JLCGetConstructor.java ├── JLCGetConstructor2.java ├── JLCGetConstructorB.java ├── JLCGetConstructorB2.java ├── JLCGetConstructors.java ├── JLCGetConstructors2.java ├── JLCGetDecAnnotations.java ├── JLCGetDecAnnotations2.java ├── JLCGetDecConstructor.java ├── JLCGetDecConstructor2.java ├── JLCGetDecConstructors.java ├── JLCGetDecConstructors2.java ├── JLCGetDecField.java ├── JLCGetDecField2.java ├── JLCGetDecFields.java ├── JLCGetDecFields2.java ├── JLCGetDecMethod.java ├── JLCGetDecMethod2.java ├── JLCGetDecMethod3.java ├── JLCGetDecMethods.java ├── JLCGetDecMethods2.java ├── JLCGetField.java ├── JLCGetField2.java ├── JLCGetFields.java ├── JLCGetFields2.java ├── JLCGetMethod.java ├── JLCGetMethod2.java ├── JLCGetMethod3.java ├── JLCGetMethods.java ├── JLCGetMethods2.java ├── JLCGetModifiers.java ├── JLCIsAnnotationPresent.java ├── JLCIsAnnotationPresent2.java ├── JLCNewInstance.java ├── JLRCGetAnnotation.java ├── JLRCGetAnnotation2.java ├── JLRCGetAnnotations.java ├── JLRCGetAnnotations2.java ├── JLRCGetDecAnnotations.java ├── JLRCGetDecAnnotations2.java ├── JLRCGetParameterAnnotations.java ├── JLRCGetParameterAnnotations2.java ├── JLRCIsAnnotationPresent.java ├── JLRCIsAnnotationPresent2.java ├── JLRCNewInstance.java ├── JLRCNewInstance2.java ├── JLRFGet.java ├── JLRFGet2.java ├── JLRFGetAnnotation.java ├── JLRFGetAnnotation2.java ├── JLRFGetAnnotations.java ├── JLRFGetAnnotations2.java ├── JLRFGetDecAnnotations.java ├── JLRFGetDecAnnotations2.java ├── JLRFGetTheRest.java ├── JLRFGetTheRest2.java ├── JLRFIsAnnotationPresent.java ├── JLRFIsAnnotationPresent2.java ├── JLRFSet.java ├── JLRFSet2.java ├── JLRFSetTheRest.java ├── JLRFSetTheRest2.java ├── JLRFSetTheRestVariant.java ├── JLRMGetAnnotation.java ├── JLRMGetAnnotation2.java ├── JLRMGetAnnotationViaAccessibleObject.java ├── JLRMGetAnnotationViaAccessibleObject2.java ├── JLRMGetAnnotationViaAnnotatedElement.java ├── JLRMGetAnnotationViaAnnotatedElement2.java ├── JLRMGetAnnotations.java ├── JLRMGetAnnotations2.java ├── JLRMGetDecAnnotations.java ├── JLRMGetDecAnnotations2.java ├── JLRMGetParameterAnnotations.java ├── JLRMGetParameterAnnotations2.java ├── JLRMInvoke.java ├── JLRMInvoke2.java ├── JLRMInvoke3.java ├── JLRMIsAnnotationPresent.java └── JLRMIsAnnotationPresent2.java ├── issue34 ├── Implementation1.java ├── Implementation2.java ├── Implementation3.java ├── InnerEnum.java ├── Interface1.java └── Interface2.java ├── jvmtwo └── Runner.java ├── methoddeletion ├── TypeA.java └── TypeA2.java ├── perf └── one │ ├── Caller.java │ ├── CallerB.java │ ├── Target.java │ └── TargetB.java ├── plugins ├── One.java └── PluginTesting.java ├── prot ├── One.java ├── PeerThree.java ├── SubOne.java ├── SubThree.java ├── SubTwo.java ├── Three.java └── Two.java ├── proxy ├── TestA1.java ├── TestA2.java ├── TestIntfaceA1.java ├── TestIntfaceA2.java ├── TestInvocationHandlerA1.java ├── three │ ├── TestA1.java │ ├── TestA2.java │ ├── TestIntfaceA1.java │ ├── TestIntfaceA2.java │ ├── TestIntfaceB1.java │ ├── TestIntfaceB2.java │ └── TestInvocationHandlerA1.java └── two │ ├── TestA1.java │ ├── TestA2.java │ ├── TestIntfaceA1.java │ ├── TestIntfaceA2.java │ └── TestInvocationHandlerA1.java ├── reflect ├── FieldAccessing.java ├── FieldAccessing2.java ├── FieldWriting.java └── FieldWriting2.java ├── reflection ├── AdHocClassInvoker.java ├── AnnoT.java ├── AnnoT2.java ├── AnnoT3.java ├── AnnoTInherit.java ├── AnnotationsInvoker.java ├── CTAnnoT.java ├── ClassInvoker.java ├── ConstructorInvoker.java ├── FieldInvoker.java ├── Invoker.class ├── Invoker.java ├── Invoker2.java ├── MethodInvoker.java ├── MethodTarget.java ├── MethodTarget002.java ├── NonReloadableSuperClass.java ├── SubTestVal.java ├── Target.class ├── Target.java ├── Target002.java ├── Target2.java ├── TestVal.java ├── bridgemethods │ ├── ClassWithBridgeMethod.java │ └── ClassWithBridgeMethod002.java ├── classannotations │ ├── ClassTarget.java │ ├── ClassTarget002.java │ ├── ClassTarget003.java │ ├── InterfaceTarget.java │ ├── InterfaceTarget002.java │ ├── InterfaceTarget003.java │ ├── SubClassTarget.java │ ├── SubClassTarget002.java │ ├── SubClassTarget003.java │ ├── SubInterfaceTarget.java │ └── SubInterfaceTarget002.java ├── classmodifiers │ ├── ClassTarget.java │ ├── ClassTarget002.java │ └── ClassTarget003.java ├── constructors │ ├── ClassForNewInstance.java │ ├── ClassForNewInstance002.java │ ├── ClassForNewInstance003.java │ ├── ClassForNewInstance004.java │ ├── ClassWithAnnotatedConstructors.java │ ├── ClassWithAnnotatedConstructors002.java │ ├── ClassWithConstructors.java │ └── ClassWithConstructors002.java ├── fieldannotations │ ├── ClassTarget.java │ ├── ClassTarget002.java │ ├── ClassTarget003.java │ ├── InterfaceTarget.java │ ├── InterfaceTarget002.java │ └── InterfaceTarget003.java ├── fields │ ├── ClassTarget.java │ ├── ClassTarget002.java │ ├── FieldSetAccessTarget.java │ ├── FieldSetAccessTarget002.java │ ├── InterfaceTarget.java │ ├── InterfaceTarget002.java │ ├── S1InterfaceTarget.java │ ├── S1InterfaceTarget002.java │ ├── S2InterfaceTarget.java │ ├── S2InterfaceTarget002.java │ ├── SubClassTarget.java │ └── SubClassTarget002.java ├── generics │ ├── GenericClass.java │ ├── GenericClass002.java │ ├── GenericInterface.java │ └── GenericInterface002.java ├── invocation │ ├── A.java │ ├── A002.java │ ├── B.java │ ├── B002.java │ ├── C.java │ └── C002.java ├── methodannotations │ ├── ClassTarget.java │ ├── ClassTarget002.java │ ├── ClassTarget003.java │ ├── InterfaceTarget.java │ ├── InterfaceTarget002.java │ ├── InterfaceTarget003.java │ ├── ParamAnnotClass.java │ ├── ParamAnnotClass002.java │ ├── ParamAnnotInterface.java │ └── ParamAnnotInterface002.java ├── nonrelfields │ └── NonReloadableClassWithFields.java ├── reflection │ ├── Invoker.class │ └── Target.class └── targets │ ├── ChangeModClass.java │ ├── ChangeModClass002.java │ ├── ClassTarget.java │ ├── ClassTarget002.java │ ├── ClassTarget003.java │ ├── DefaultClass.java │ ├── DefaultClass002.java │ ├── GetMethodClass.java │ ├── GetMethodClass002.java │ ├── GetMethodInterface.java │ ├── GetMethodInterface002.java │ ├── GetMethodSubClass.java │ ├── GetMethodSubClass002.java │ ├── GetMethodSubInterface.java │ ├── GetMethodSubInterface002.java │ ├── InterfaceTarget.java │ ├── InterfaceTarget002.java │ ├── MyFrame.java │ ├── MyFrame002.java │ ├── SimpleClass.java │ ├── SimpleClass002.java │ ├── SubClassImplementsInterface.java │ ├── SubClassImplementsInterface002.java │ ├── SubClassTarget.java │ ├── SubClassTarget002.java │ └── SubClassTarget003.java ├── remote ├── One.java ├── One2.java ├── OneOne.java ├── Perf1.java ├── Perf2.java ├── Person.java ├── Person2.java ├── PersonB.java ├── PersonB2.java ├── Serialize.java └── SerializeB.java ├── sfields ├── A.java ├── B.java ├── C.java ├── D.java ├── D2.java ├── E.java ├── I.java ├── I2.java ├── X.java ├── X2.java ├── Y.java └── Y2.java ├── springloaded.properties ├── supercalls ├── OverloadExample.java ├── Runner.java ├── Sub.java ├── Sub002.java └── Super.java ├── system ├── Eight.java ├── Eleven.java ├── Five.java ├── Four.java ├── Nine.java ├── One.java ├── Seven.java ├── Six.java ├── Ten.java ├── Thirteen.java ├── Three.java ├── Twelve.java └── Two.java ├── test ├── Initializers.java ├── Interface.java ├── SubInitializers.java └── SubInterface.java ├── testapp └── Demo.java ├── tgt ├── SimpleClass.java ├── SimpleClass002.java ├── SimpleClass003.java ├── SimpleClass004.java ├── SimpleClass005.java ├── SimpleClass006.java ├── SimpleClass007.java ├── SimpleI.java ├── SimpleI002.java ├── SimpleI003.java ├── SimpleI004.java ├── SimpleI005.java ├── SimpleIClass.java ├── SimpleIClass003.java ├── SimpleIClass005.java ├── SimpleIClassTwo.java ├── SimpleITwo.java ├── SimpleITwo002.java ├── StaticCaller.java ├── StaticCaller002.java ├── StaticCaller003.java ├── StaticICaller.java ├── StaticICaller002.java ├── StaticICaller003.java ├── StaticICaller005.java ├── StaticICallerTwo.java └── StaticICallerTwo002.java ├── typedescriptor ├── A.java ├── A2.java ├── B.java ├── B2.java ├── C.java └── C2.java └── virtual ├── CalleeOne.java ├── CalleeOne002.java ├── CalleeOne003.java ├── CalleeThreeBottom.java ├── CalleeThreeMiddle.java ├── CalleeThreeTop.java ├── CalleeThreeTop002.java ├── CalleeThreeTop003.java ├── CalleeTwoBottom.java ├── CalleeTwoTop.java ├── CalleeTwoTop002.java ├── CalleeTwoTop003.java ├── CallerOne.java ├── CallerThree.java ├── CallerTwo.java ├── FourBot.java ├── FourBot2.java ├── FourBotB.java ├── FourBotB2.java ├── FourBotC.java ├── FourBotC2.java ├── FourMidB.java ├── FourMidB2.java ├── FourMidC.java ├── FourMidC2.java ├── FourTop.java ├── FourTop2.java ├── FourTopB.java ├── FourTopB2.java ├── FourTopC.java └── FourTopC2.java /.gitattributes: -------------------------------------------------------------------------------- 1 | .bat text eol=crlf 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | target/ 2 | bin/ 3 | subbin/ 4 | builds/ 5 | superbin/ 6 | springloaded-*.jar 7 | .DS_Store 8 | /.idea 9 | *.iml 10 | *.ipr 11 | *.iws 12 | /.gradle 13 | build/ 14 | -------------------------------------------------------------------------------- /.settings/gradle/org.springsource.ide.eclipse.gradle.core.prefs: -------------------------------------------------------------------------------- 1 | #org.springsource.ide.eclipse.gradle.core.preferences.GradleProjectPreferences 2 | #Thu Sep 05 19:57:59 CEST 2013 3 | org.springsource.ide.eclipse.gradle.rootprojectloc= 4 | -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | version=1.3.0.BUILD-SNAPSHOT 2 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.8-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include "springloaded" 2 | include "testdata" 3 | include "testdata-java8" 4 | include "testdata-aspectj" 5 | include "testdata-groovy" 6 | include "testdata-plugin" 7 | include "testdata-subloader" 8 | include "testdata-superloader" 9 | 10 | -------------------------------------------------------------------------------- /springloaded/.settings/gradle/org.springsource.ide.eclipse.gradle.core.prefs: -------------------------------------------------------------------------------- 1 | #org.springsource.ide.eclipse.gradle.core.preferences.GradleProjectPreferences 2 | #Thu Sep 05 19:57:59 CEST 2013 3 | org.springsource.ide.eclipse.gradle.rootprojectloc=.. 4 | -------------------------------------------------------------------------------- /springloaded/.settings/gradle/org.springsource.ide.eclipse.gradle.refresh.prefs: -------------------------------------------------------------------------------- 1 | #org.springsource.ide.eclipse.gradle.core.actions.GradleRefreshPreferences 2 | #Thu Sep 05 19:59:13 CEST 2013 3 | enableDSLD=false 4 | -------------------------------------------------------------------------------- /springloaded/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/springloaded/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /springloaded/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-3.4.1-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /springloaded/lib/asm-3.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/springloaded/lib/asm-3.2.jar -------------------------------------------------------------------------------- /springloaded/lib/asm-5.0.2-sources.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/springloaded/lib/asm-5.0.2-sources.zip -------------------------------------------------------------------------------- /springloaded/lib/asm-5.0.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/springloaded/lib/asm-5.0.2.jar -------------------------------------------------------------------------------- /springloaded/lib/asm-5.0_BETA-sources.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/springloaded/lib/asm-5.0_BETA-sources.zip -------------------------------------------------------------------------------- /springloaded/lib/asm-5.0_BETA.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/springloaded/lib/asm-5.0_BETA.jar -------------------------------------------------------------------------------- /springloaded/lib/asm-tree-3.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/springloaded/lib/asm-tree-3.2.jar -------------------------------------------------------------------------------- /springloaded/lib/asm-tree-5.0.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/springloaded/lib/asm-tree-5.0.2.jar -------------------------------------------------------------------------------- /springloaded/lib/asm-tree-5.0_BETA.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/springloaded/lib/asm-tree-5.0_BETA.jar -------------------------------------------------------------------------------- /springloaded/src/main/java/org/springsource/loaded/agent/MacOsFileSystemWatcher.java: -------------------------------------------------------------------------------- 1 | package org.springsource.loaded.agent; 2 | 3 | public class MacOsFileSystemWatcher { 4 | } 5 | -------------------------------------------------------------------------------- /springloaded/src/main/java/org/springsource/loaded/agent/PollingFileSystemWatcher.java: -------------------------------------------------------------------------------- 1 | package org.springsource.loaded.agent; 2 | 3 | public class PollingFileSystemWatcher { 4 | } 5 | -------------------------------------------------------------------------------- /testdata-aspectj/src/main/java/data/AnAspect.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public aspect AnAspect { 4 | 5 | before(): execution(!static * AspectReceiver.*(..)) { 6 | System.out.println("Foo"); 7 | } 8 | 9 | pointcut boo(String foo,String bar): execution(* *(..)) && args(foo,bar); 10 | before(String foo): boo(foo,*) { 11 | 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata-aspectj/src/main/java/data/AspectReceiver.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class AspectReceiver { 4 | 5 | public static void main2() { 6 | main(null); 7 | } 8 | 9 | public static void main(String[] args) { 10 | new AspectReceiver().foo(); 11 | } 12 | 13 | public void foo() { 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /testdata-groovy/.settings/gradle/org.springsource.ide.eclipse.gradle.core.prefs: -------------------------------------------------------------------------------- 1 | #org.springsource.ide.eclipse.gradle.core.preferences.GradleProjectPreferences 2 | #Thu Sep 05 20:20:55 CEST 2013 3 | org.springsource.ide.eclipse.gradle.linkedresources= 4 | org.springsource.ide.eclipse.gradle.rootprojectloc=.. 5 | -------------------------------------------------------------------------------- /testdata-groovy/.settings/org.eclipse.jdt.groovy.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | groovy.compiler.level=22 3 | -------------------------------------------------------------------------------- /testdata-groovy/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: "groovy" 2 | 3 | dependencies { 4 | compile 'org.codehaus.groovy:groovy:1.8.2' 5 | } 6 | 7 | sourceSets { 8 | main { 9 | groovy { 10 | srcDir 'src' 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata-groovy/groovy-1.8.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata-groovy/groovy-1.8.2.jar -------------------------------------------------------------------------------- /testdata-groovy/groovy-all-1.8.6.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata-groovy/groovy-all-1.8.6.jar -------------------------------------------------------------------------------- /testdata-groovy/src/clinitg/FourHelper.groovy: -------------------------------------------------------------------------------- 1 | package clinitg; 2 | 3 | public class FourHelper { 4 | 5 | public static void doo() { 6 | print 'a' 7 | } 8 | 9 | 10 | } 11 | -------------------------------------------------------------------------------- /testdata-groovy/src/clinitg/One.groovy: -------------------------------------------------------------------------------- 1 | package clinitg; 2 | 3 | public class One { 4 | 5 | public static int i = 5; 6 | 7 | public static String run() { 8 | return Integer.toString(i); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata-groovy/src/clinitg/One2.groovy: -------------------------------------------------------------------------------- 1 | package clinitg; 2 | 3 | public class One2 { 4 | 5 | public static int i = 7; 6 | 7 | public static String run() { 8 | return Integer.toString(i); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata-groovy/src/clinitg/Three.groovy: -------------------------------------------------------------------------------- 1 | package clinitg; 2 | 3 | public class Three { 4 | 5 | // i have no clinit 6 | 7 | public static String run() { 8 | return "1"; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata-groovy/src/clinitg/Three2.groovy: -------------------------------------------------------------------------------- 1 | package clinitg; 2 | 3 | public class Three2 { 4 | 5 | // still no clinit 6 | 7 | public static String run() { 8 | return "1"; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata-groovy/src/clinitg/Three3.groovy: -------------------------------------------------------------------------------- 1 | package clinitg; 2 | 3 | public class Three3 { 4 | 5 | static int i; 6 | { 7 | i = 4; 8 | } 9 | 10 | public static String run() { 11 | return Integer.toString(i); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata-groovy/src/clinitg/Two.groovy: -------------------------------------------------------------------------------- 1 | package clinitg; 2 | 3 | public class Two { 4 | 5 | public final static int i = 55; 6 | 7 | public static String run() { 8 | return Integer.toString(i); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata-groovy/src/clinitg/Two2.groovy: -------------------------------------------------------------------------------- 1 | package clinitg; 2 | 3 | public class Two2 { 4 | 5 | public final static int i = 99; 6 | 7 | public static String run() { 8 | return Integer.toString(i); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata-groovy/src/enums/ExtensibleEnum.groovy: -------------------------------------------------------------------------------- 1 | package enums 2 | 3 | interface ExtensibleEnum { 4 | 5 | int getIntValue() 6 | 7 | } -------------------------------------------------------------------------------- /testdata-groovy/src/enums/ExtensibleEnum3.groovy: -------------------------------------------------------------------------------- 1 | package enums 2 | 3 | interface ExtensibleEnum3 { 4 | 5 | int getValue() 6 | 7 | } -------------------------------------------------------------------------------- /testdata-groovy/src/enums/ExtensibleEnumB.groovy: -------------------------------------------------------------------------------- 1 | package enums 2 | 3 | interface ExtensibleEnumB { 4 | 5 | int getIntValue() 6 | 7 | } -------------------------------------------------------------------------------- /testdata-groovy/src/remote/Code.groovy: -------------------------------------------------------------------------------- 1 | package remote 2 | 3 | class Code { 4 | // Create a serialized closure 5 | static void main(String[] args) { 6 | def a = { 1 + 1 } 7 | def out = new ObjectOutputStream(new FileOutputStream('ser.obj')) 8 | out.writeObject(a) 9 | out.close() 10 | } 11 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/Back.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class Back { 4 | 5 | int var = 35 6 | } 7 | -------------------------------------------------------------------------------- /testdata-groovy/src/simple/Back2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class Back2 { 4 | 5 | int var = 35 6 | 7 | int var2= 3355 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata-groovy/src/simple/Basic.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class Basic { 4 | public String run() { 5 | return 'hello' 6 | } 7 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/Basic2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class Basic2 { 4 | public String run() { 5 | return 'goodbye' 6 | 7 | } 8 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/Basic3.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class Basic3 { 4 | public String run() { 5 | return getString(); 6 | } 7 | 8 | public String getString() { 9 | return 'abc' 10 | } 11 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/Basic4.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class Basic4 implements Serializable { 4 | public String run() { 5 | return 'hello' 6 | } 7 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicB.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicB { 4 | public static String run() { 5 | return getString(); 6 | } 7 | 8 | public static String getString() { 9 | return "hello" 10 | } 11 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicB2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicB2 { 4 | public static String run() { 5 | return getOtherString(); 6 | } 7 | 8 | public static String getString() { 9 | return "hello" 10 | } 11 | 12 | public static String getOtherString() { 13 | return "goodbye" 14 | } 15 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicC.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicC { 4 | public String run() { 5 | return getString(); 6 | } 7 | 8 | public String getString() { 9 | return "hello" 10 | } 11 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicC2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicC2 { 4 | public String run() { 5 | return getOtherString(); 6 | } 7 | 8 | public String getString() { 9 | return "hello" 10 | } 11 | 12 | public String getOtherString() { 13 | return "goodbye" 14 | } 15 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicD.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicD { 4 | 5 | public String run() { 6 | return 'hello' 7 | } 8 | 9 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicD2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicD2 { 4 | 5 | public String run() { 6 | return BasicDTarget2.getString() 7 | } 8 | 9 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicDTarget.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicDTarget { 4 | 5 | 6 | 7 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicDTarget2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicDTarget2 { 4 | 5 | static String getString() { return 'abc' } 6 | 7 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicE.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicE { 4 | 5 | public String run() { 6 | // BasicETarget t = new BasicETarget() 7 | 8 | // return t.getString() 9 | return 'hello' 10 | } 11 | 12 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicE2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicE2 { 4 | 5 | public String run() { 6 | BasicETarget t = new BasicETarget() 7 | return t.getString() 8 | } 9 | 10 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicETarget.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicETarget { 4 | 5 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicETarget2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicETarget2 { 4 | 5 | String getString() { return 'foobar' } 6 | 7 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicF.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicF { 4 | 5 | public String run() { 6 | BasicFTarget t = new BasicFTarget() 7 | return t.getString() 8 | } 9 | 10 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicFTarget.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicFTarget { 4 | int d= 4456; 5 | public String getString() { 6 | return '123' 7 | } 8 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicFTarget2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicFTarget2 { 4 | 5 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicFTarget4.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicFTarget4 { 4 | int d = 4456; 5 | 6 | int getString() { 7 | return d 8 | } 9 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicG.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicG { 4 | 5 | public String run() { 6 | return BasicGTarget.foo() 7 | } 8 | 9 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicGTarget.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicGTarget { 4 | 5 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicGTarget2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicGTarget2 { 4 | 5 | static String foo() { return 'hw' } 6 | 7 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicWithClosure.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicWithClosure { 4 | 5 | def clos =null; 6 | 7 | public String run() { 8 | clos = { println "hello!" } 9 | print "Executing:" 10 | clos() 11 | } 12 | 13 | public static void main(String[] args) { 14 | new BasicWithClosure().run(); 15 | } 16 | 17 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicWithClosure2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicWithClosure2 { 4 | 5 | def clos = null; 6 | 7 | public String run() { 8 | clos = { println "hello!" } 9 | print "Executing:" 10 | clos() 11 | } 12 | 13 | public static void main(String[] args) { 14 | new BasicWithClosure2().run(); 15 | } 16 | 17 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicWithClosure3.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicWithClosure3 { 4 | 5 | def clos = null; 6 | 7 | public String run() { 8 | clos = { println "goodbye!" } 9 | print "Executing:" 10 | clos() 11 | } 12 | 13 | public static void main(String[] args) { 14 | new BasicWithClosure3().run(); 15 | } 16 | 17 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicWithClosureB.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicWithClosureB { 4 | 5 | def clos = { println "hello!" } 6 | 7 | public String run() { 8 | print "Executing:" 9 | clos() 10 | } 11 | 12 | public static void main(String[] args) { 13 | new BasicWithClosureB().run(); 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicWithClosureB2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicWithClosureB2 { 4 | 5 | def clos = { println "hello!" } 6 | 7 | public String run() { 8 | print "Executing:" 9 | clos() 10 | } 11 | 12 | public static void main(String[] args) { 13 | new BasicWithClosureB2().run(); 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/BasicWithClosureB3.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class BasicWithClosureB3 { 4 | 5 | def clos = { println "goodbye!" } 6 | 7 | public String run() { 8 | print "Executing:" 9 | clos() 10 | } 11 | 12 | public static void main(String[] args) { 13 | new BasicWithClosureB3().run(); 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/CopyOfBasicD.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class CopyOfBasicD { 4 | public String run() { 5 | } 6 | 7 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/Front.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class Front { 4 | Back b = new Back() 5 | 6 | public Object run() { 7 | return b.var 8 | } 9 | 10 | public Object run2() { 11 | return b.var2 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata-groovy/src/simple/LFront.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class LFront { 4 | 5 | public Object run() { 6 | String x = "abc"; 7 | return x; 8 | } 9 | 10 | public Object run2() { 11 | int i = 99; 12 | return i; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /testdata-groovy/src/simple/LFront2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class LFront2 { 4 | 5 | public Object run() { 6 | String x = "xxx"; 7 | return x; 8 | } 9 | 10 | public Object run2() { 11 | int i = 88; 12 | return i; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /testdata-groovy/src/simple/Values.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class Values { 4 | 5 | public Integer run() { 6 | return 123 7 | } 8 | 9 | } -------------------------------------------------------------------------------- /testdata-groovy/src/simple/Values2.groovy: -------------------------------------------------------------------------------- 1 | package simple 2 | 3 | class Values2 { 4 | 5 | public Integer run() { 6 | return 456 7 | } 8 | 9 | } -------------------------------------------------------------------------------- /testdata-java8/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /testdata-java8/.gradle/1.7/taskArtifacts/cache.properties: -------------------------------------------------------------------------------- 1 | #Thu Feb 06 13:01:33 PST 2014 2 | -------------------------------------------------------------------------------- /testdata-java8/.gradle/1.7/taskArtifacts/cache.properties.lock: -------------------------------------------------------------------------------- 1 |  -------------------------------------------------------------------------------- /testdata-java8/.gradle/1.7/taskArtifacts/fileHashes.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata-java8/.gradle/1.7/taskArtifacts/fileHashes.bin -------------------------------------------------------------------------------- /testdata-java8/.gradle/1.7/taskArtifacts/fileSnapshots.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata-java8/.gradle/1.7/taskArtifacts/fileSnapshots.bin -------------------------------------------------------------------------------- /testdata-java8/.gradle/1.7/taskArtifacts/outputFileStates.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata-java8/.gradle/1.7/taskArtifacts/outputFileStates.bin -------------------------------------------------------------------------------- /testdata-java8/.gradle/1.7/taskArtifacts/taskArtifacts.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata-java8/.gradle/1.7/taskArtifacts/taskArtifacts.bin -------------------------------------------------------------------------------- /testdata-java8/build.gradle: -------------------------------------------------------------------------------- 1 | 2 | apply plugin: 'java' 3 | sourceCompatibility = 1.8 4 | targetCompatibility = 1.8 5 | -------------------------------------------------------------------------------- /testdata-java8/build.sh: -------------------------------------------------------------------------------- 1 | ../gradlew build 2 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/DefaultMethodsC1A.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class DefaultMethodsC1A implements DefaultMethodsI1A { 4 | 5 | public static int run() { 6 | DefaultMethodsC1A instance = new DefaultMethodsC1A(); 7 | instance.test(); 8 | return 42; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/DefaultMethodsC2A.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class DefaultMethodsC2A implements DefaultMethodsI2A { 4 | 5 | public static int run() { 6 | DefaultMethodsC2A instance = new DefaultMethodsC2A(); 7 | return 42; 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/DefaultMethodsC2A2.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class DefaultMethodsC2A2 implements DefaultMethodsI2A2 { 4 | 5 | public static int run() { 6 | DefaultMethodsC2A2 instance = new DefaultMethodsC2A2(); 7 | instance.test(); 8 | return 43; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/DefaultMethodsI1A.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public interface DefaultMethodsI1A { 4 | public default void test() {} 5 | } 6 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/DefaultMethodsI1A2.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public interface DefaultMethodsI1A2 { 4 | public default void test() {System.out.println("FOO");} 5 | } 6 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/DefaultMethodsI2A.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public interface DefaultMethodsI2A { 4 | } 5 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/DefaultMethodsI2A2.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public interface DefaultMethodsI2A2 { 4 | public default void test() { 5 | System.out.println("FOO"); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/FirstClass.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata-java8/src/main/java/basic/FirstClass.class -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/FirstClass.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class FirstClass { 4 | 5 | public static void main(String[] args) { 6 | System.out.println("This is Java8"); 7 | } 8 | 9 | public static int run() { 10 | return 8; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaA.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaA { 4 | 5 | public interface Foo { int m(); } 6 | 7 | public static void main(String[] args) { 8 | run(); 9 | } 10 | 11 | public static int run() { 12 | Foo f = null; 13 | f = () -> 77; 14 | return f.m(); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaA2.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaA2 { 4 | 5 | public interface Foo { int m(); } 6 | 7 | public static void main(String[] args) { 8 | run(); 9 | } 10 | 11 | public static int run() { 12 | Foo f = null; 13 | f = () -> 88; 14 | return f.m(); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaB.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaB { 4 | 5 | public interface Foo { long m(int i); } 6 | 7 | public static void main(String[] args) { 8 | run(); 9 | } 10 | 11 | public static long run() { 12 | Foo f = null; 13 | f = (i) -> i*33; 14 | return f.m(3); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaB2.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaB2 { 4 | 5 | public interface Foo { long m(int i); } 6 | 7 | public static void main(String[] args) { 8 | run(); 9 | } 10 | 11 | public static long run() { 12 | Foo f = null; 13 | f = (i) -> i*44; 14 | return f.m(4); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaC.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaC { 4 | 5 | public interface Boo { long m(int i,int j); } 6 | 7 | public static void main(String[] args) { 8 | run(); 9 | } 10 | 11 | public static long run() { 12 | Boo f = null; 13 | f = (i,j) -> i*j; 14 | return f.m(3,2); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaC2.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaC2 { 4 | 5 | public interface Boo { long m(int i,int j); } 6 | 7 | public static void main(String[] args) { 8 | run(); 9 | } 10 | 11 | public static long run() { 12 | Boo f = null; 13 | f = (i,j) -> i+j; 14 | return f.m(3,2); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaD.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaD { 4 | 5 | public interface Boo { String m(int i,String s, int j, boolean b); } 6 | 7 | public static void main(String[] args) { 8 | run(); 9 | } 10 | 11 | public static String run() { 12 | Boo f = null; 13 | f = (i,j,k,l) -> ""+l+i+k+j; 14 | return f.m(3,"abc",42,true); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaD2.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaD2 { 4 | 5 | public interface Boo { String m(int i,String s, int j, boolean b); } 6 | 7 | public static void main(String[] args) { 8 | run(); 9 | } 10 | 11 | public static String run() { 12 | Boo f = null; 13 | f = (i,j,k,l) -> j+(i*k)+l; 14 | return f.m(3,"def",88,true); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaG.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaG { 4 | 5 | interface Boo { int m(); } 6 | 7 | public static void main(String[] args) { 8 | run(); 9 | } 10 | 11 | public static int run() { 12 | Boo f = null; 13 | f = () -> 99; 14 | return f.m(); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaG2.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaG2 { 4 | 5 | interface Boo { int m(); } 6 | 7 | public static void main(String[] args) { 8 | run(); 9 | } 10 | 11 | public static int run() { 12 | Boo f = null; 13 | f = () -> 44; 14 | return f.m(); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaI.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaI { 4 | 5 | public interface Foo { String m(String in); } 6 | 7 | 8 | public static void main(String[] args) { 9 | run(); 10 | } 11 | 12 | public static String run() { 13 | Foo f = (s) -> s; 14 | return f.m("a"); 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/LambdaI2.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class LambdaI2 { 4 | 5 | public interface Foo { String m(String in, String in2); } 6 | 7 | 8 | public static void main(String[] args) { 9 | run(); 10 | } 11 | 12 | public static String run() { 13 | Foo f = (s,t) -> s+t; 14 | return f.m("a", "b"); 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /testdata-java8/src/main/java/basic/StreamBBFoo.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public interface StreamBBFoo { 4 | int m(int n); 5 | } -------------------------------------------------------------------------------- /testdata-plugin/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /testdata-plugin/.settings/gradle/org.springsource.ide.eclipse.gradle.core.prefs: -------------------------------------------------------------------------------- 1 | #org.springsource.ide.eclipse.gradle.core.preferences.GradleProjectPreferences 2 | #Thu Sep 05 20:21:05 CEST 2013 3 | org.springsource.ide.eclipse.gradle.linkedresources= 4 | org.springsource.ide.eclipse.gradle.rootprojectloc=.. 5 | -------------------------------------------------------------------------------- /testdata-plugin/build.gradle: -------------------------------------------------------------------------------- 1 | dependencies { 2 | compile project(":springloaded") 3 | } 4 | 5 | sourceSets { 6 | main { 7 | java { 8 | srcDir 'src' 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /testdata-subloader/.settings/gradle/org.springsource.ide.eclipse.gradle.core.prefs: -------------------------------------------------------------------------------- 1 | #org.springsource.ide.eclipse.gradle.core.preferences.GradleProjectPreferences 2 | #Thu Sep 05 20:21:08 CEST 2013 3 | org.springsource.ide.eclipse.gradle.linkedresources= 4 | org.springsource.ide.eclipse.gradle.rootprojectloc=.. 5 | -------------------------------------------------------------------------------- /testdata-subloader/build.gradle: -------------------------------------------------------------------------------- 1 | dependencies { 2 | compile project(":testdata-superloader") 3 | } 4 | 5 | sourceSets { 6 | main { 7 | java { 8 | srcDir 'src' 9 | } 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/issue34/Implementation2.java: -------------------------------------------------------------------------------- 1 | package issue34; 2 | public abstract class Implementation2 extends grails.Implementation1 implements Interface2 { 3 | 4 | } -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/issue34/Implementation3.java: -------------------------------------------------------------------------------- 1 | package issue34; 2 | public class Implementation3 extends Implementation2 { 3 | 4 | public static void main(String [] args) { 5 | System.out.println("Hello World!"); 6 | } 7 | 8 | public static void run() { 9 | Implementation3.main(null); 10 | } 11 | 12 | } -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/issue34/Interface2.java: -------------------------------------------------------------------------------- 1 | package issue34; 2 | public interface Interface2 extends grails.Interface1 { 3 | 4 | } -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subassociatedtypes/CB.java: -------------------------------------------------------------------------------- 1 | package subassociatedtypes; 2 | 3 | import associatedtypes.CM; 4 | 5 | public class CB extends CM implements IB,IB2 { 6 | 7 | } 8 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subassociatedtypes/IB.java: -------------------------------------------------------------------------------- 1 | package subassociatedtypes; 2 | 3 | public interface IB { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subassociatedtypes/IB2.java: -------------------------------------------------------------------------------- 1 | package subassociatedtypes; 2 | 3 | public interface IB2 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/Bottom.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | import superpkg.Top; 4 | 5 | public class Bottom extends Top { 6 | 7 | public void m() { 8 | System.out.println("Bottom.m() running"); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/Bottom002.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | import superpkg.Top002; 4 | 5 | public class Bottom002 extends Top002 { 6 | 7 | public void m() { 8 | System.out.println("Bottom002.m() running"); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/Bottom003.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | import superpkg.Top003; 4 | 5 | public class Bottom003 extends Top003 { 6 | 7 | public void m() { 8 | newMethodOnTop(); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/BottomB.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | import superpkg.TopB; 4 | 5 | public class BottomB extends TopB { 6 | 7 | public void m() { 8 | System.out.println("BottomB.m() running"); 9 | } 10 | 11 | public void run() { 12 | m(); 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/BottomB002.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | import superpkg.TopB002; 4 | 5 | public class BottomB002 extends TopB002 { 6 | 7 | public void m() { 8 | super.m(); 9 | } 10 | 11 | public void run() { 12 | m(); 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/Controller.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | public class Controller extends grails.Top { 4 | public void foo() { 5 | super.foo(); 6 | System.out.println("subpkg.ControllerB.foo() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/Controller002.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | public class Controller002 extends grails.Top { 4 | public void foo() { 5 | super.foo(); 6 | System.out.println("subpkg.ControllerB.foo() running again!"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/Invoker.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | import superpkg.Target; 4 | 5 | public class Invoker { 6 | 7 | static Target t = new Target(); 8 | 9 | public void run() { 10 | System.out.println("Invoker.run() running"); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/Invoker002.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | import superpkg.Target002; 4 | 5 | public class Invoker002 { 6 | 7 | static Target002 t = new Target002(); 8 | 9 | public void run() { 10 | t.m(); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/InvokerB.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | public class InvokerB { 4 | 5 | public void run() { 6 | System.out.println("InvokerB.run() running"); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/InvokerB002.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | import superpkg.TargetB002; 4 | 5 | public class InvokerB002 { 6 | 7 | public void run() { 8 | TargetB002.m(); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/InvokerC.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | public class InvokerC { 4 | 5 | public void run() { 6 | System.out.println("InvokerC.run() running"); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/InvokerC002.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | import superpkg.TargetC002; 4 | import superpkg.TargetImplC002; 5 | 6 | public class InvokerC002 { 7 | 8 | public void run() { 9 | TargetC002 t = new TargetImplC002(); 10 | t.m(); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/InvokerC003.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | import superpkg.TargetC002; 4 | import superpkg.TargetImplC002; 5 | 6 | public class InvokerC003 { 7 | 8 | public void run() { 9 | TargetC002 t = new TargetImplC002(); 10 | t.n(); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/InvokerD.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | import superpkg.TargetD; 4 | 5 | public class InvokerD { 6 | 7 | public void run() { 8 | System.out.println(new TargetD().getOne()); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /testdata-subloader/src/main/java/subpkg/Subby.java: -------------------------------------------------------------------------------- 1 | package subpkg; 2 | 3 | @SuppressWarnings("serial") 4 | public class Subby implements java.io.Serializable { 5 | public String toString() { 6 | return "a subby"; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata-superloader/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /testdata-superloader/.settings/gradle/org.springsource.ide.eclipse.gradle.core.prefs: -------------------------------------------------------------------------------- 1 | #org.springsource.ide.eclipse.gradle.core.preferences.GradleProjectPreferences 2 | #Thu Sep 05 20:21:11 CEST 2013 3 | org.springsource.ide.eclipse.gradle.linkedresources= 4 | org.springsource.ide.eclipse.gradle.rootprojectloc=.. 5 | -------------------------------------------------------------------------------- /testdata-superloader/build.gradle: -------------------------------------------------------------------------------- 1 | dependencies { 2 | compile("cglib:cglib:2.2.2") { exclude group: 'asm' } // cglib 2.2.2 depends on asm 3.3 3 | } 4 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/associatedtypes/CM.java: -------------------------------------------------------------------------------- 1 | package associatedtypes; 2 | 3 | public class CM extends CT implements IM,IM2 { 4 | 5 | public static void run() {} 6 | } 7 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/associatedtypes/CT.java: -------------------------------------------------------------------------------- 1 | package associatedtypes; 2 | 3 | public class CT implements IT, IT2 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/associatedtypes/IM.java: -------------------------------------------------------------------------------- 1 | package associatedtypes; 2 | 3 | public interface IM { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/associatedtypes/IM2.java: -------------------------------------------------------------------------------- 1 | package associatedtypes; 2 | 3 | public interface IM2 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/associatedtypes/IT.java: -------------------------------------------------------------------------------- 1 | package associatedtypes; 2 | 3 | public interface IT { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/associatedtypes/IT2.java: -------------------------------------------------------------------------------- 1 | package associatedtypes; 2 | 3 | public interface IT2 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/grails/Implementation1.java: -------------------------------------------------------------------------------- 1 | package grails; 2 | 3 | public abstract class Implementation1 implements Interface1 { 4 | 5 | @Override 6 | public final T process1(T type) { 7 | return type; 8 | } 9 | 10 | } -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/grails/Interface1.java: -------------------------------------------------------------------------------- 1 | package grails; 2 | public interface Interface1 { 3 | 4 | public T process1(T type); 5 | 6 | } -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/grails/Top.java: -------------------------------------------------------------------------------- 1 | package grails; 2 | 3 | public class Top { 4 | protected void foo() { 5 | System.out.println("grails.Top.foo() running"); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/Simple.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class Simple { 4 | public void moo() { 5 | System.out.println("Simple.moo() running"); 6 | } 7 | 8 | } -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/Target.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class Target { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/Target002.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class Target002 { 4 | 5 | public void m() { 6 | System.out.println("Target002.m() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/TargetB.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class TargetB { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/TargetB002.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class TargetB002 { 4 | 5 | public static void m() { 6 | System.out.println("TargetB002.m() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/TargetC.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public interface TargetC { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/TargetC002.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public interface TargetC002 { 4 | 5 | void m(); 6 | 7 | void n(); 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/TargetD.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class TargetD { 4 | 5 | public java.io.Serializable getOne() { 6 | return null; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/TargetImplC.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class TargetImplC implements TargetC { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/TargetImplC002.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class TargetImplC002 implements TargetC002 { 4 | 5 | public void m() { 6 | System.out.println("TargetImplC002.m() running"); 7 | } 8 | 9 | public void n() { 10 | System.out.println("TargetImplC002.n() running"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/Top.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class Top { 4 | 5 | public void m() { 6 | System.out.println("Top.m() running"); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/Top002.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class Top002 { 4 | 5 | public void m() { 6 | System.out.println("Top002.m() running"); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/Top003.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class Top003 { 4 | 5 | public void m() { 6 | System.out.println("Top002.m() running"); 7 | } 8 | 9 | public void newMethodOnTop() { 10 | System.out.println("newMethodOnTop() running"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/TopB.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class TopB { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata-superloader/src/main/java/superpkg/TopB002.java: -------------------------------------------------------------------------------- 1 | package superpkg; 2 | 3 | public class TopB002 { 4 | 5 | public void m() { 6 | System.out.println("TopB002.m() running"); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/.settings/gradle/org.springsource.ide.eclipse.gradle.core.prefs: -------------------------------------------------------------------------------- 1 | #org.springsource.ide.eclipse.gradle.core.preferences.GradleProjectPreferences 2 | #Thu Sep 05 20:20:46 CEST 2013 3 | org.springsource.ide.eclipse.gradle.linkedresources= 4 | org.springsource.ide.eclipse.gradle.rootprojectloc=.. 5 | -------------------------------------------------------------------------------- /testdata/code.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/code.jar -------------------------------------------------------------------------------- /testdata/codejar/A.java: -------------------------------------------------------------------------------- 1 | package codeforjar; 2 | 3 | public class A { 4 | public static String getString() { return "Hello"; } 5 | } 6 | -------------------------------------------------------------------------------- /testdata/codejar/readme.txt: -------------------------------------------------------------------------------- 1 | This jar is built from the code in the codejar folder in the testdata project: 2 | 3 | javac -d . *.java 4 | jar -cvMf ../code.jar * 5 | -------------------------------------------------------------------------------- /testdata/jars/README: -------------------------------------------------------------------------------- 1 | For the watching/updating from jars feature, these are the jar testdata 2 | -------------------------------------------------------------------------------- /testdata/jars/grailsplugins/grailsplugins.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/jars/grailsplugins/grailsplugins.jar -------------------------------------------------------------------------------- /testdata/jars/one/Bar.java: -------------------------------------------------------------------------------- 1 | package test; 2 | public class Bar { 3 | public static void run() { 4 | new Wibble().foo(); 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /testdata/jars/one/Foo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/jars/one/Foo.class -------------------------------------------------------------------------------- /testdata/jars/one/Foo.java: -------------------------------------------------------------------------------- 1 | public class Foo { 2 | public static void run() { 3 | m(); 4 | } 5 | public static void m() { 6 | System.out.println("m() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/jars/one/Wibble.java: -------------------------------------------------------------------------------- 1 | package test; 2 | public class Wibble { 3 | public void foo() { 4 | System.out.println("Wibble.foo() running, version 1"); 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /testdata/jars/one/bar.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/jars/one/bar.jar -------------------------------------------------------------------------------- /testdata/jars/one/build.sh: -------------------------------------------------------------------------------- 1 | javac -d . *.java 2 | jar -cvMf foo.jar Foo.class 3 | jar -cvMf bar.jar test/*.class 4 | 5 | -------------------------------------------------------------------------------- /testdata/jars/one/foo.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/jars/one/foo.jar -------------------------------------------------------------------------------- /testdata/jars/one/test/Bar.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/jars/one/test/Bar.class -------------------------------------------------------------------------------- /testdata/jars/one/test/Wibble.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/jars/one/test/Wibble.class -------------------------------------------------------------------------------- /testdata/jars/two/Bar.java: -------------------------------------------------------------------------------- 1 | package test; 2 | public class Bar { 3 | public static void run() { 4 | new Wibble().foo(); 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /testdata/jars/two/Foo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/jars/two/Foo.class -------------------------------------------------------------------------------- /testdata/jars/two/Foo.java: -------------------------------------------------------------------------------- 1 | public class Foo { 2 | public static void run() { 3 | n(); 4 | } 5 | public static void n() { 6 | System.out.println("n() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/jars/two/Wibble.java: -------------------------------------------------------------------------------- 1 | package test; 2 | public class Wibble { 3 | public void foo() { 4 | System.out.println("Wibble.foo() running, version 2"); 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /testdata/jars/two/bar.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/jars/two/bar.jar -------------------------------------------------------------------------------- /testdata/jars/two/build.sh: -------------------------------------------------------------------------------- 1 | javac -d . *.java 2 | jar -cvMf foo.jar Foo.class 3 | jar -cvMf bar.jar test/*.class 4 | 5 | -------------------------------------------------------------------------------- /testdata/jars/two/foo.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/jars/two/foo.jar -------------------------------------------------------------------------------- /testdata/jars/two/test/Bar.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/jars/two/test/Bar.class -------------------------------------------------------------------------------- /testdata/jars/two/test/Wibble.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/jars/two/test/Wibble.class -------------------------------------------------------------------------------- /testdata/lib/cglib-nodep-2.2.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/lib/cglib-nodep-2.2.jar -------------------------------------------------------------------------------- /testdata/lib/spring-expression-4.0.0.M3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/lib/spring-expression-4.0.0.M3.jar -------------------------------------------------------------------------------- /testdata/meta1/META-INF/services/org.springsource.reloading.agent.Plugins: -------------------------------------------------------------------------------- 1 | com.test.plugins.ReloadEventProcessorPlugin1 2 | -------------------------------------------------------------------------------- /testdata/meta2/META-INF/services/org.springsource.reloading.agent.Plugins: -------------------------------------------------------------------------------- 1 | #com.test.plugins.ReloadEventProcessorPlugin1 2 | -------------------------------------------------------------------------------- /testdata/meta3/META-INF/services/org.springsource.reloading.agent.Plugins: -------------------------------------------------------------------------------- 1 | com.test.plugins.ReloadEventProcessorPlugin1 -------------------------------------------------------------------------------- /testdata/src/main/java/abs/AbsImpl.java: -------------------------------------------------------------------------------- 1 | package abs; 2 | 3 | public abstract class AbsImpl implements Intface { 4 | } 5 | -------------------------------------------------------------------------------- /testdata/src/main/java/abs/AbsImpl2.java: -------------------------------------------------------------------------------- 1 | package abs; 2 | 3 | public abstract class AbsImpl2 implements Intface { 4 | public int method() { 5 | return 2; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/abs/Impl.java: -------------------------------------------------------------------------------- 1 | package abs; 2 | 3 | public class Impl extends AbsImpl { 4 | public int method() { 5 | return 1; 6 | } 7 | 8 | public static void run() { 9 | System.out.println(new Impl().method()); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/abs/Impl2.java: -------------------------------------------------------------------------------- 1 | package abs; 2 | 3 | public class Impl2 extends AbsImpl2 { 4 | 5 | public static void run() { 6 | System.out.println(new Impl2().method()); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/abs/Intface.java: -------------------------------------------------------------------------------- 1 | package abs; 2 | 3 | interface Intface { 4 | public int method(); 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/accessors/DefaultFieldsSub.java: -------------------------------------------------------------------------------- 1 | package accessors; 2 | 3 | public class DefaultFieldsSub extends DefaultFields { 4 | 5 | int defaultField = 2; 6 | 7 | public int b() { 8 | return defaultField; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/annos/AnnotatedType.java: -------------------------------------------------------------------------------- 1 | package annos; 2 | 3 | @SimpleAnnotation 4 | public class AnnotatedType { 5 | 6 | public static void printit() { 7 | System.out.println(AnnotatedType.class.getAnnotation(SimpleAnnotation.class)); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/annos/AnnotatedType2.java: -------------------------------------------------------------------------------- 1 | package annos; 2 | 3 | @SimpleAnnotation 4 | public class AnnotatedType2 { 5 | 6 | public static void printit() { 7 | System.out.println(">>" + AnnotatedType2.class.getAnnotation(SimpleAnnotation.class)); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/annos/Foo2.java: -------------------------------------------------------------------------------- 1 | package annos; 2 | 3 | import java.lang.annotation.Documented; 4 | 5 | @Documented 6 | public @interface Foo2 { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/annos/SimpleAnnotation.java: -------------------------------------------------------------------------------- 1 | package annos; 2 | 3 | import java.lang.annotation.Retention; 4 | import java.lang.annotation.RetentionPolicy; 5 | 6 | @Retention(RetentionPolicy.RUNTIME) 7 | public @interface SimpleAnnotation { 8 | String value() default "hello"; 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/annos/SimpleAnnotation2.java: -------------------------------------------------------------------------------- 1 | package annos; 2 | 3 | import java.lang.annotation.Retention; 4 | import java.lang.annotation.RetentionPolicy; 5 | 6 | @Retention(RetentionPolicy.RUNTIME) 7 | public @interface SimpleAnnotation2 { 8 | String value() default "hello"; 9 | 10 | int number() default 42; 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/baddata/One.java: -------------------------------------------------------------------------------- 1 | package baddata; 2 | 3 | public class One { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/baddata/OneA.java: -------------------------------------------------------------------------------- 1 | package baddata; 2 | 3 | // Changed implemented interfaces 4 | @SuppressWarnings("serial") 5 | public class OneA implements java.io.Serializable { 6 | 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/baddata/OneB.java: -------------------------------------------------------------------------------- 1 | package baddata; 2 | 3 | // New field added 4 | public class OneB { 5 | 6 | public int i; 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/basic/Basic.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class Basic { 4 | 5 | public void foo() { 6 | 7 | } 8 | 9 | public int getValue() { 10 | return 5; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/basic/Basic002.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class Basic002 { 4 | 5 | public int getValue() { 6 | return 7; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/basic/Basic003.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class Basic003 { 4 | 5 | public int getValue() { 6 | return 3; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/basic/Basic004.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class Basic004 { 4 | 5 | public int getValue() { 6 | return 4; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/basic/Basic005.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class Basic005 { 4 | 5 | public static void foo() { 6 | 7 | } 8 | 9 | public int getValue() { 10 | return 8; 11 | } 12 | 13 | public static int barstatic(String s) { 14 | return Integer.valueOf(s); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/basic/BasicB.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class BasicB { 4 | 5 | public void foo() { 6 | 7 | } 8 | 9 | public int getValue() { 10 | return 5; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/basic/BasicC.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class BasicC { 4 | 5 | public void foo() { 6 | 7 | } 8 | 9 | public int getValue() { 10 | return 5; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/basic/Bottom.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class Bottom extends Top { 4 | 5 | public void run() { 6 | new Bottom().method(); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/basic/Bottom2.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class Bottom2 extends Top2 { 4 | 5 | public void method() { 6 | System.out.println("abc"); 7 | } 8 | 9 | public void run() { 10 | new Bottom2().method(); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/basic/Top.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class Top { 4 | 5 | public final void method() { 6 | } 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/basic/Top2.java: -------------------------------------------------------------------------------- 1 | package basic; 2 | 3 | public class Top2 { 4 | 5 | public void method() { 6 | } 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/builder/DispatcherTestOne.java: -------------------------------------------------------------------------------- 1 | package builder; 2 | 3 | public class DispatcherTestOne { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/builder/DispatcherTestOne002.java: -------------------------------------------------------------------------------- 1 | package builder; 2 | 3 | public class DispatcherTestOne002 { 4 | 5 | public String toString() { 6 | return "abc"; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/builder/DispatcherTestOne003.java: -------------------------------------------------------------------------------- 1 | package builder; 2 | 3 | public class DispatcherTestOne003 { 4 | 5 | public String foo(int i) { 6 | return Integer.toString(i); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/A.java: -------------------------------------------------------------------------------- 1 | package catchers; 2 | 3 | @SuppressWarnings("unused") 4 | public class A { 5 | public int publicMethod() { 6 | return 65; 7 | } 8 | 9 | private int privateMethod() { 10 | return 2222; 11 | } 12 | 13 | void defaultMethod() { 14 | } 15 | 16 | protected int protectedMethod() { 17 | return 23; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/B.java: -------------------------------------------------------------------------------- 1 | package catchers; 2 | 3 | public class B extends A { 4 | 5 | public Object callProtectedMethod() { 6 | return protectedMethod(); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/Bottom.java: -------------------------------------------------------------------------------- 1 | package catchers; 2 | 3 | public class Bottom extends Middle { 4 | public void foo() { 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/Finality.java: -------------------------------------------------------------------------------- 1 | package catchers; 2 | 3 | class Super { 4 | public final int hashCode() { 5 | return 12; 6 | } 7 | } 8 | 9 | public class Finality extends Super { 10 | // no catcher, inherited method is final 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/Middle.java: -------------------------------------------------------------------------------- 1 | package catchers; 2 | 3 | // Top provides an implementation for would normally get a catcher 4 | public abstract class Middle extends Top { 5 | public int hashCode() { 6 | return 12; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/Runner.java: -------------------------------------------------------------------------------- 1 | package catchers; 2 | 3 | public class Runner { 4 | 5 | B b = new B(); 6 | 7 | public String runToString() { 8 | return b.toString(); 9 | } 10 | 11 | public Object runPublicMethod() { 12 | return b.publicMethod(); 13 | } 14 | 15 | public Object runProtectedMethod() { 16 | return b.callProtectedMethod(); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/SimpleCatcher.java: -------------------------------------------------------------------------------- 1 | package catchers; 2 | 3 | class AbstractClass { 4 | public void setTelephone(String s) { 5 | } 6 | } 7 | 8 | public class SimpleCatcher extends AbstractClass { 9 | // should get a catcher for setTelephone 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/Top.java: -------------------------------------------------------------------------------- 1 | package catchers; 2 | 3 | // Top provides an implementation for would normally get a catcher 4 | public abstract class Top { 5 | public String toString() { 6 | return "ABC"; 7 | } 8 | 9 | // defines something that needs a catcher 10 | public abstract void foo(); 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/Y.java: -------------------------------------------------------------------------------- 1 | package catchers; 2 | 3 | public class Y extends X { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/Y2.java: -------------------------------------------------------------------------------- 1 | package catchers; 2 | 3 | public class Y2 extends X { 4 | 5 | public int publicMethod() { 6 | return 22; 7 | } 8 | 9 | char defaultMethod() { 10 | return 'B'; 11 | } 12 | 13 | protected long protectedMethod() { 14 | return 200; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/Z.java: -------------------------------------------------------------------------------- 1 | package catchers; 2 | 3 | @SuppressWarnings("unused") 4 | public class Z extends Y { 5 | 6 | public int publicMethod() { 7 | return 3; 8 | } 9 | 10 | private void privateMethod() { 11 | } 12 | 13 | char defaultMethod() { 14 | return 'c'; 15 | } 16 | 17 | protected long protectedMethod() { 18 | return 300; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/play.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/src/main/java/catchers/play.class -------------------------------------------------------------------------------- /testdata/src/main/java/catchers/play.java: -------------------------------------------------------------------------------- 1 | //public class play { 2 | // protected void p() { 3 | // } 4 | //} 5 | // 6 | //class x extends play { 7 | // public void p() {} 8 | //} 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/clinit/One.java: -------------------------------------------------------------------------------- 1 | package clinit; 2 | 3 | public class One { 4 | 5 | public static int i = 5; 6 | 7 | public static String run() { 8 | return Integer.toString(i); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/clinit/One2.java: -------------------------------------------------------------------------------- 1 | package clinit; 2 | 3 | public class One2 { 4 | 5 | public static int i = 7; 6 | 7 | public static String run() { 8 | return Integer.toString(i); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/clinit/Three.java: -------------------------------------------------------------------------------- 1 | package clinit; 2 | 3 | public class Three { 4 | 5 | // i have no clinit 6 | 7 | public static String run() { 8 | return "1"; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/clinit/Three2.java: -------------------------------------------------------------------------------- 1 | package clinit; 2 | 3 | public class Three2 { 4 | 5 | // still no clinit 6 | 7 | public static String run() { 8 | return "1"; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/clinit/Three3.java: -------------------------------------------------------------------------------- 1 | package clinit; 2 | 3 | public class Three3 { 4 | 5 | static int i; 6 | { 7 | i = 4; 8 | } 9 | 10 | public static String run() { 11 | return Integer.toString(i); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/clinit/Two.java: -------------------------------------------------------------------------------- 1 | package clinit; 2 | 3 | public class Two { 4 | 5 | public final static int i = 55; 6 | 7 | public static String run() { 8 | return Integer.toString(i); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/clinit/Two2.java: -------------------------------------------------------------------------------- 1 | package clinit; 2 | 3 | public class Two2 { 4 | 5 | public final static int i = 99; 6 | 7 | public static String run() { 8 | return Integer.toString(i); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/codegen/Simple.java: -------------------------------------------------------------------------------- 1 | package codegen; 2 | 3 | public class Simple { 4 | public void method() { 5 | 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/com/demo/Bar.java: -------------------------------------------------------------------------------- 1 | package com.demo; 2 | 3 | public class Bar { 4 | 5 | private int count = 0; 6 | 7 | public int increment() { 8 | return count = count + 2; 9 | } 10 | 11 | } -------------------------------------------------------------------------------- /testdata/src/main/java/com/demo/Foo.java: -------------------------------------------------------------------------------- 1 | package com.demo; 2 | 3 | public class Foo { 4 | public static void main(String[] args) { 5 | Bar bar = new Bar(); 6 | System.out.println(bar.increment()); 7 | System.out.println(bar.increment()); 8 | System.out.println(bar.increment()); 9 | System.out.println(bar.increment()); 10 | System.out.println(bar.increment()); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/common/Anno.java: -------------------------------------------------------------------------------- 1 | package common; 2 | 3 | import java.lang.annotation.Retention; 4 | import java.lang.annotation.RetentionPolicy; 5 | 6 | @Retention(RetentionPolicy.RUNTIME) 7 | public @interface Anno { 8 | String id(); 9 | 10 | int someValue() default 37; 11 | 12 | long longValue() default 2L; 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/common/Marker.java: -------------------------------------------------------------------------------- 1 | package common; 2 | 3 | import java.lang.annotation.*; 4 | 5 | @Retention(RetentionPolicy.RUNTIME) 6 | public @interface Marker { 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/A.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class A { 4 | 5 | String string; 6 | 7 | A(String s) { 8 | this.string = s; 9 | } 10 | 11 | public String getString() { 12 | return string; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/B.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class B extends A { 4 | B(int i) { 5 | super(new Integer(i).toString()); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/B2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class B2 extends A { 4 | B2(int i) { 5 | super("27"); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Callee.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class Callee { 4 | 5 | Callee() { 6 | 7 | } 8 | 9 | public String toString() { 10 | return "callee"; 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Callee2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class Callee2 { 4 | 5 | Callee2() { 6 | 7 | } 8 | 9 | Callee2(String theString) { 10 | System.out.println(theString); 11 | } 12 | 13 | public String toString() { 14 | return "callee"; 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/CalleeB.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class CalleeB extends CalleeSuperB { 4 | 5 | CalleeB() { 6 | 7 | } 8 | 9 | public String toString() { 10 | return "callee"; 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/CalleeB2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class CalleeB2 extends CalleeSuperB2 { 4 | 5 | CalleeB2() { 6 | 7 | } 8 | 9 | CalleeB2(String theString) { 10 | super(32768); 11 | System.out.println(theString); 12 | } 13 | 14 | public String toString() { 15 | return "callee"; 16 | } 17 | 18 | } 19 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/CalleeSuperB.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class CalleeSuperB { 4 | 5 | CalleeSuperB() { 6 | 7 | } 8 | 9 | public String toString() { 10 | return "callee"; 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/CalleeSuperB2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class CalleeSuperB2 { 4 | 5 | CalleeSuperB2() { 6 | 7 | } 8 | 9 | CalleeSuperB2(int i) { 10 | System.out.println("Super number was " + i); 11 | } 12 | 13 | public String toString() { 14 | return "callee"; 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Caller.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class Caller { 4 | 5 | public Object runA() { 6 | return new Callee(); 7 | } 8 | 9 | public Object runB() { 10 | // ... stubbed here ... 11 | return null; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Caller2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class Caller2 { 4 | 5 | public Object runA() { 6 | return new Callee(); 7 | } 8 | 9 | public Object runB() { 10 | return new Callee2("abcde"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/CallerB.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class CallerB { 4 | 5 | public Object runA() { 6 | return new CalleeB(); 7 | } 8 | 9 | public Object runB() { 10 | // ... stubbed here ... 11 | return null; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/CallerB2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class CallerB2 { 4 | 5 | public Object runA() { 6 | return new CalleeB(); 7 | } 8 | 9 | public Object runB() { 10 | return new CalleeB2("abcde"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Default.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class Default { 4 | } 5 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Finals.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class Finals { 4 | 5 | public final int i = 324; 6 | 7 | public static final String s = "abc"; 8 | 9 | public Finals() { 10 | 11 | } 12 | 13 | public String getValue() { 14 | return i + " " + s; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Finals2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class Finals2 { 4 | 5 | public final int i = 324; 6 | 7 | public static final String s = "def"; 8 | 9 | public Finals2() { 10 | 11 | } 12 | 13 | public String getValue() { 14 | return i + " " + s; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/One.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class One { 4 | public One() { 5 | System.out.println("Hello Andy"); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/One2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class One2 { 4 | public One2() { 5 | System.out.println("Hello World"); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/SuperThree.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class SuperThree { 4 | 5 | SuperThree() { 6 | System.err.print("Hello from SuperThree."); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/SuperThree2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class SuperThree2 { 4 | 5 | SuperThree2() { 6 | System.err.print("Hello from SuperThree2."); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Three.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class Three extends SuperThree { 4 | 5 | Three() { 6 | System.err.println("Hello from Three."); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Three2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class Three2 extends SuperThree { 4 | 5 | Three2() { 6 | System.err.println("Hello from Three2."); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Two.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/src/main/java/ctors/Two.class -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Two.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | public class Two { 3 | Two(String message) { 4 | System.out.println(message); 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/Two2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | public class Two2 { 3 | Two2(String message) { 4 | System.out.println(message+message); 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/V.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class V { 4 | int i = 1; 5 | int j = 2; 6 | 7 | public V() { 8 | printMessage(); 9 | } 10 | 11 | public static void printMessage() { 12 | System.out.println("Hello"); 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/V2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class V2 { 4 | int i = 1; 5 | int j = 2; 6 | 7 | public V2() { 8 | printMessage(); 9 | } 10 | 11 | public static void printMessage() { 12 | System.out.println("Hello"); 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/V3.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class V3 { 4 | int i = 1; 5 | int j = 4; // changed in this version 6 | 7 | public V3() { 8 | printMessage(); 9 | } 10 | 11 | public static void printMessage() { 12 | System.out.println("Goodbye"); 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/XX.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class XX { 4 | 5 | public XX() { 6 | System.out.println(Utils.stack(2)); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/ctors/XX2.java: -------------------------------------------------------------------------------- 1 | package ctors; 2 | 3 | public class XX2 { 4 | 5 | public XX2() { 6 | System.err.println("sometext"); 7 | System.out.println(Utils.stack(2)); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/Anno.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public @interface Anno { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/AnnotatedClazz.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | @Anno 4 | public class AnnotatedClazz { 5 | 6 | @Anno 7 | public void moo() { 8 | 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/Apple003.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class Apple003 { 4 | 5 | public void run() { 6 | System.out.println("Apple003.run() is running"); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/BottomType.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class BottomType { 4 | 5 | public int methodOne(String[] ss) { 6 | return 3; 7 | } 8 | 9 | public String methodTwo(int i) { 10 | return "bottom"; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/Fruity.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | /** 4 | * Simple test class with one method returning a String 5 | * 6 | * @author Andy Clement 7 | */ 8 | public class Fruity { 9 | public String getFruit() { 10 | return "apple"; 11 | } 12 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/Fruity002.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | /** 4 | * Simple test class with one method returning a String 5 | * 6 | * @author Andy Clement 7 | */ 8 | public class Fruity002 { 9 | public String getFruit() { 10 | return "orange"; 11 | } 12 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/Fruity003.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | /** 4 | * Simple test class with one method returning a String 5 | * 6 | * @author Andy Clement 7 | */ 8 | public class Fruity003 { 9 | public String getFruit() { 10 | return "banana"; 11 | } 12 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/HelloWorldFields.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class HelloWorldFields { 4 | 5 | String theMessage = "Hello Andy"; 6 | 7 | public void greet() { 8 | System.out.println(theMessage); 9 | } 10 | 11 | public void setMessage(String newValue) { 12 | theMessage = newValue; 13 | } 14 | 15 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/Kiwi.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class Kiwi { 4 | 5 | Plum plum = new Plum(); 6 | 7 | public void run() { 8 | plum.run(); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/MiddleType.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class MiddleType { 4 | 5 | public String methodTwo(int i) { 6 | return "middle"; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/Plum.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class Plum { 4 | 5 | public void run() { 6 | 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/Plum002.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class Plum002 { 4 | 5 | public void run() { 6 | callPrivate(); 7 | } 8 | 9 | private void callPrivate() { 10 | 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/Reflector.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class Reflector { 4 | 5 | public void runOne() { 6 | AnnotatedClazz.class.getAnnotation(Anno.class); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/ScenarioA.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class ScenarioA { 4 | 5 | public String foo() { 6 | return "from ScenarioA"; 7 | } 8 | 9 | public String getName() { 10 | return null; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/ScenarioA002.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class ScenarioA002 { 4 | 5 | public String foo() { 6 | return "from ScenarioA 002"; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/ScenarioA003.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class ScenarioA003 { 4 | 5 | public String foo() { 6 | return "from " + getValue(); 7 | } 8 | 9 | public String getValue() { 10 | return "ScenarioA 003"; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/SimpleClass.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | class SimpleClass { 4 | public void foo() { 5 | 6 | } 7 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/SimpleClass002.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | class SimpleClass002 { 4 | public String bar() { 5 | return ""; 6 | } 7 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/SimpleClassCaller.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class SimpleClassCaller { 4 | 5 | public void m() { 6 | SimpleClass sc = new SimpleClass(); 7 | sc.foo(); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/SimpleClassThree.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | import java.io.IOException; 4 | import java.util.List; 5 | import java.util.Map; 6 | 7 | @SuppressWarnings("rawtypes") 8 | class SimpleClassThree { 9 | public static String foo(List list, Map m) throws IOException { 10 | return null; 11 | } 12 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/SimpleClassTwo.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | import java.io.IOException; 4 | import java.util.List; 5 | import java.util.Map; 6 | 7 | @SuppressWarnings("rawtypes") 8 | class SimpleClassTwo { 9 | public String foo(List list, Map m) throws IOException { 10 | return null; 11 | } 12 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/SomeConstructors.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | // TODO [rc1] what about varargs - any testing done for it? 4 | 5 | @SuppressWarnings("unused") 6 | class SomeConstructors { 7 | public SomeConstructors() { 8 | } 9 | 10 | private SomeConstructors(String s, int i) { 11 | } 12 | 13 | protected SomeConstructors(long l) { 14 | } 15 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/SomeConstructors002.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | class SomeConstructors002 { 4 | public SomeConstructors002() { 5 | } 6 | // deleted 7 | // private SomeConstructors002(String s, int i) { 8 | // } 9 | // 10 | // protected SomeConstructors002(long l) { 11 | // } 12 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/SomeConstructors2.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class SomeConstructors2 { 4 | // will have a default constructor 5 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/SomeFields.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | import java.util.List; 4 | import java.util.Map; 5 | 6 | @SuppressWarnings({ "unused", "serial" }) 7 | class SomeFields extends SimpleClass implements java.io.Serializable { 8 | private int privateField; 9 | public String publicField; 10 | List defaultField; 11 | protected Map> protectedField; 12 | } -------------------------------------------------------------------------------- /testdata/src/main/java/data/TopType.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | public class TopType { 4 | 5 | public int methodOne(String[] ss) { 6 | return 1; 7 | } 8 | 9 | public String methodTwo(int i) { 10 | return "top"; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/data/Wiggle.java: -------------------------------------------------------------------------------- 1 | package data; 2 | 3 | import java.lang.annotation.Retention; 4 | import java.lang.annotation.RetentionPolicy; 5 | 6 | @Retention(RetentionPolicy.RUNTIME) 7 | public @interface Wiggle { 8 | String value() default "default"; 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/dd/Middle.java: -------------------------------------------------------------------------------- 1 | package dd; 2 | 3 | public class Middle extends Top { 4 | } 5 | -------------------------------------------------------------------------------- /testdata/src/main/java/dd/Top.java: -------------------------------------------------------------------------------- 1 | package dd; 2 | 3 | public class Top { 4 | } 5 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/Annot.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | import java.lang.annotation.*; 4 | 5 | @Retention(RetentionPolicy.RUNTIME) 6 | @interface Annot {} 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/Annot2.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | import java.lang.annotation.*; 4 | 5 | @Retention(RetentionPolicy.RUNTIME) 6 | @interface Annot2 { 7 | String id() default "abc"; 8 | long value() default 34; 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/AnnotFields.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class AnnotFields { 4 | 5 | @Annot int i; 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/AnnotFields2.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class AnnotFields2 { 4 | 5 | int i; 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/AnnotFieldsTwo.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class AnnotFieldsTwo { 4 | 5 | @Annot2(id = "xyz") 6 | int i; 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/AnnotFieldsTwo2.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class AnnotFieldsTwo2 { 4 | 5 | @Annot2(id = "xyz", value = 24) 6 | int i; 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/DiffOne.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class DiffOne { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/DiffOneX.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | class DiffOneX { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/DiffOneY.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | @SuppressWarnings("serial") 4 | public class DiffOneY implements java.io.Serializable { 5 | 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/DiffOneZ.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class DiffOneZ { 4 | 5 | public int newIntField; // this is a brand new field 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/DiffThree.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class DiffThree { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/DiffThreeX.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | class Foo { 4 | } 5 | 6 | @SuppressWarnings("serial") 7 | public class DiffThreeX extends Foo implements java.io.Serializable { 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/DiffThreeY.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class DiffThreeY { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/DiffTwo.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class DiffTwo { 4 | 5 | public int anIntField; 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/DiffTwoX.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class DiffTwoX { 4 | 5 | // public int anIntField; field removed in this version 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/DiffTwoY.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class DiffTwoY { 4 | 5 | public String anIntField; // changed from int to String 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/differs/DiffTwoZ.java: -------------------------------------------------------------------------------- 1 | package differs; 2 | 3 | public class DiffTwoZ { 4 | 5 | @SuppressWarnings("unused") 6 | private int anIntField; 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/dispatcher/C.java: -------------------------------------------------------------------------------- 1 | package dispatcher; 2 | 3 | public class C { 4 | 5 | public void foo(String s) { 6 | System.out.println("instance foo running"); 7 | } 8 | 9 | public static void foo(C c, String s) { 10 | System.out.println("static foo running"); 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/dispatcher/CallC.java: -------------------------------------------------------------------------------- 1 | package dispatcher; 2 | 3 | public class CallC { 4 | 5 | public void runInstance() { 6 | C c = new C(); 7 | c.foo("abc"); 8 | } 9 | 10 | public void runStatic() { 11 | C c = new C(); 12 | C.foo(c, "abc"); 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/dispatcher/Staticmethod.java: -------------------------------------------------------------------------------- 1 | package dispatcher; 2 | 3 | public class Staticmethod { 4 | public static String foo(String s) { 5 | return s; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/dispatcher/StaticmethodCaller.java: -------------------------------------------------------------------------------- 1 | package dispatcher; 2 | 3 | public class StaticmethodCaller { 4 | public void run() { 5 | System.out.println(Staticmethod.foo("abc")); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/enumtests/Colours.java: -------------------------------------------------------------------------------- 1 | package enumtests; 2 | 3 | public enum Colours { 4 | Red, Green, Blue; 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/enumtests/Colours2.java: -------------------------------------------------------------------------------- 1 | package enumtests; 2 | 3 | public enum Colours2 { 4 | Red, Green, Blue, Yellow; 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/enumtests/ColoursB.java: -------------------------------------------------------------------------------- 1 | package enumtests; 2 | 3 | public enum ColoursB implements Intface { 4 | Red(111), Green(222), Blue(333); 5 | 6 | int value; 7 | 8 | private ColoursB(int i) { 9 | this.value = i; 10 | } 11 | 12 | @Override 13 | public int getIntValue() { 14 | return value; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/enumtests/ColoursB2.java: -------------------------------------------------------------------------------- 1 | package enumtests; 2 | 3 | public enum ColoursB2 implements Intface { 4 | Red(111), Green(222), Blue(333), Yellow(444); 5 | 6 | int value; 7 | 8 | private ColoursB2(int i) { 9 | this.value = i * 2; 10 | } 11 | 12 | @Override 13 | public int getIntValue() { 14 | return value; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/enumtests/ColoursC.java: -------------------------------------------------------------------------------- 1 | package enumtests; 2 | 3 | public enum ColoursC { 4 | Red, Green, Blue, Orange, Yellow; 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/enumtests/ColoursC2.java: -------------------------------------------------------------------------------- 1 | package enumtests; 2 | 3 | public enum ColoursC2 { 4 | Red, Green, Blue, Orange, Yellow, Magenta, Cyan; 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/enumtests/ColoursD.java: -------------------------------------------------------------------------------- 1 | package enumtests; 2 | 3 | public enum ColoursD { 4 | Red(1111), Green(2222), Blue(3333); 5 | 6 | int value; 7 | 8 | private ColoursD(int i) { 9 | this.value = i; 10 | } 11 | 12 | public int getIntValue() { 13 | return value; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/enumtests/ColoursD2.java: -------------------------------------------------------------------------------- 1 | package enumtests; 2 | 3 | public enum ColoursD2 { 4 | Red("aaa"), Green("bbb"), Blue("ccc"); 5 | 6 | char value; 7 | 8 | private ColoursD2(String i) { 9 | this.value = i.charAt(0); 10 | } 11 | 12 | public char getCharValue() { 13 | return value; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/enumtests/Intface.java: -------------------------------------------------------------------------------- 1 | package enumtests; 2 | 3 | public interface Intface { 4 | int getIntValue(); 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/enumtests/Intface3.java: -------------------------------------------------------------------------------- 1 | package enumtests; 2 | 3 | public interface Intface3 { 4 | int getIntValue(); 5 | 6 | int getDoubleIntValue(); 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/example/Simple.java: -------------------------------------------------------------------------------- 1 | package example; 2 | 3 | public class Simple { 4 | void moo() { 5 | System.out.println("Simple.moo() running"); 6 | } 7 | 8 | } -------------------------------------------------------------------------------- /testdata/src/main/java/executor/A.java: -------------------------------------------------------------------------------- 1 | package executor; 2 | 3 | import common.Marker; 4 | 5 | @Marker 6 | public class A { 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/executor/A2.java: -------------------------------------------------------------------------------- 1 | package executor; 2 | 3 | @common.Marker 4 | @common.Anno(id = "abc") 5 | public class A2 { 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/executor/B.java: -------------------------------------------------------------------------------- 1 | package executor; 2 | 3 | import common.*; 4 | 5 | public class B { 6 | @Marker 7 | public void m() {} 8 | 9 | //@common.Marker 10 | //@common.Anno(id = "abc") 11 | public void m2() {} 12 | } 13 | 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/executor/B2.java: -------------------------------------------------------------------------------- 1 | package executor; 2 | 3 | 4 | 5 | public class B2 { 6 | 7 | // annotation removed 8 | public void m() { 9 | } 10 | 11 | // two annotations added 12 | @common.Marker 13 | @common.Anno(id = "abc") 14 | public void m2() { 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/executor/C.java: -------------------------------------------------------------------------------- 1 | package executor; 2 | 3 | public class C { 4 | 5 | public void foo(String s) {} 6 | public static void foo(C c, String s) {} 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/executor/I.java: -------------------------------------------------------------------------------- 1 | package executor; 2 | 3 | import common.Marker; 4 | 5 | public interface I { 6 | @Marker 7 | public void m(); 8 | 9 | //@common.Marker 10 | //@common.Anno(id = "abc") 11 | public void m2(); 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/executor/I2.java: -------------------------------------------------------------------------------- 1 | package executor; 2 | 3 | //@SuppressWarnings("unused") 4 | public interface I2 { 5 | 6 | // annotation removed 7 | public void m(); 8 | 9 | // two annotations added 10 | @common.Marker 11 | @common.Anno(id = "abc") 12 | public void m2(); 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/executor/TestOne.java: -------------------------------------------------------------------------------- 1 | package executor; 2 | 3 | public class TestOne { 4 | 5 | public int i = 101; 6 | 7 | // Regular method 8 | public long foo(String s) { 9 | return Long.parseLong(s); 10 | } 11 | 12 | // Overriding an inherited method 13 | public int hashCode() { 14 | return 37; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/executor/TestOne2.java: -------------------------------------------------------------------------------- 1 | package executor; 2 | 3 | public class TestOne2 { 4 | 5 | public int i; 6 | 7 | // Regular method 8 | public long foo(String s) { 9 | return Long.parseLong(s); 10 | } 11 | 12 | // Overriding an inherited method 13 | public int hashCode() { 14 | return i * 2; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/A.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class A { 4 | 5 | int i = 1; 6 | String s = "fromA"; 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Aa.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Aa { 4 | 5 | static int i = 1; 6 | static String s = "fromA"; 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Add.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Add { 4 | 5 | public int getValue() { 6 | return 0; 7 | } 8 | 9 | public void setValue(int newvalue) { 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Add002.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Add002 { 4 | 5 | int i; 6 | 7 | public int getValue() { 8 | return i; 9 | } 10 | 11 | public void setValue(int newvalue) { 12 | i = newvalue; 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/B.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class B extends A { 4 | 5 | int i = 2; 6 | String s = "fromB"; 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/B2.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class B2 extends A { 4 | 5 | // fields removed, exposing those in A (a non reloadable type) 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Ba.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Ba extends Aa { 4 | 5 | static int i = 2; 6 | static String s = "fromB"; 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Ba2.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Ba2 extends Aa { 4 | 5 | // fields removed, exposing those in A (a non reloadable type) 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/C.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class C extends B { 4 | 5 | public void setInt(int newvalue) { 6 | this.i = newvalue; 7 | } 8 | 9 | public void setString(String newString) { 10 | this.s = newString; 11 | } 12 | 13 | public String getString() { 14 | return this.s; 15 | } 16 | 17 | public int getInt() { 18 | return this.i; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Ia.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Ia { 4 | 5 | int field = 5; 6 | 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Ic.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public interface Ic { 4 | int number = 42; 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Ja.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Ja extends Ia { 4 | 5 | public int getField() { 6 | return field; 7 | } 8 | 9 | public void setField(int newvalue) { 10 | field = newvalue; 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Ka.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Ka extends Ja { 4 | 5 | public static void main(String[] argv) { 6 | System.out.println(new Ka().getField()); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Ka002.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Ka002 extends Ja { 4 | 5 | int field; 6 | 7 | public static void main(String[] argv) { 8 | System.out.println(new Ka002().getField()); 9 | } 10 | 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/NotReloadable.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class NotReloadable { 4 | 5 | public int i = 5; 6 | 7 | public void setI_NotReloadable(int newi) { 8 | this.i = newi; 9 | } 10 | 11 | public int getI_NotReloadable() { 12 | return this.i; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/P.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class P { 4 | public int i = 1; 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Pa.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Pa { 4 | public int i = 1; 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Q.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Q extends P { 4 | public int i = 2; 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Q2.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Q2 extends P { 4 | // public int i = 1; 5 | 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Qa.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Qa extends Pa { 4 | public int i = 2; 5 | } -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Qa2.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Qa2 extends Pa { 4 | // public int i = 1; 5 | 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Qc.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Qc implements Ic { 4 | public int number = 2; 5 | 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Qc2.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Qc2 implements Ic { 4 | // public int number = 2; 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/R.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class R extends Q { 4 | public int getI() { 5 | return i; 6 | } 7 | } -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Ra.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Ra extends Qa { 4 | public int getI() { 5 | return i; 6 | } 7 | } -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Rc.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Rc extends Qc { 4 | public int getNumber() { 5 | return number; 6 | } 7 | public static void main(String []argv) { 8 | System.out.println(new Rc().getNumber()); 9 | } 10 | } -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Removed.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Removed { 4 | 5 | int i; 6 | 7 | public int getValue() { 8 | return i; 9 | } 10 | 11 | public void setValue(int newvalue) { 12 | this.i = newvalue; 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Removed002.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Removed002 { 4 | 5 | public int getValue() { 6 | return 0; 7 | } 8 | 9 | public void setValue(int newvalue) { 10 | 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/S.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class S { 4 | 5 | public int getValue() { 6 | return -1; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/S2.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class S2 { 4 | 5 | int i; 6 | 7 | public int getValue() { 8 | return i; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/T.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class T { 4 | int i = 345; 5 | String j = "stringValue"; 6 | 7 | public Object getI() { 8 | return i; 9 | } 10 | 11 | public Object getJ() { 12 | return j; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/T2.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class T2 { 4 | String i; // was 'int i' 5 | int j; // was 'String j' 6 | 7 | public Object getI() { 8 | return i; 9 | } 10 | 11 | public Object getJ() { 12 | return j; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/X.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class X { 4 | 5 | public int i = 5; 6 | 7 | public int getI() { 8 | return i; 9 | } 10 | 11 | public void setI(int newi) { 12 | this.i = newi; 13 | } 14 | 15 | // do nothing, no field called J yet 16 | public int getJ() { 17 | return -1; 18 | } 19 | 20 | public void setJ(int newj) { 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/X002.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class X002 { 4 | 5 | public int i; 6 | 7 | public int j; 8 | 9 | public int getI() { 10 | return i; 11 | } 12 | 13 | public void setI(int newi) { 14 | this.i = newi; 15 | } 16 | 17 | public int getJ() { 18 | return j; 19 | } 20 | 21 | public void setJ(int newj) { 22 | this.j = newj; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Y.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Y { 4 | 5 | int j = 5; 6 | 7 | public int getJ() { 8 | return j; 9 | } 10 | 11 | public void setJ(int newj) { 12 | j = newj; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Y002.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Y002 { 4 | 5 | static int j; 6 | 7 | public int getJ() { 8 | return j; 9 | } 10 | 11 | public void setJ(int newj) { 12 | j = newj; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Ya.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Ya { 4 | 5 | int j = 5; 6 | 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Ya002.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Ya002 { 4 | 5 | static int j; // made static 6 | 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Yb.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Yb { 4 | 5 | static int j = 5; 6 | 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Yb002.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Yb002 { 4 | 5 | int j; // made non static 6 | 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Za.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Za extends Ya { 4 | 5 | public static void main(String[]argv) { 6 | System.out.println(new Za().getJ()); 7 | } 8 | public int getJ() { 9 | return j; 10 | } 11 | 12 | public void setJ(int newj) { 13 | j = newj; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Za002.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Za002 extends Ya002 { 4 | 5 | public static void main(String[] argv) { 6 | System.out.println(new Za002().getJ()); 7 | } 8 | 9 | public int getJ() { 10 | return j; 11 | } 12 | 13 | public void setJ(int newj) { 14 | j = newj; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/fields/Zb.java: -------------------------------------------------------------------------------- 1 | package fields; 2 | 3 | public class Zb extends Yb { 4 | 5 | public static void main(String[] argv) { 6 | System.out.println(new Zb().getJ()); 7 | } 8 | 9 | public int getJ() { 10 | return j; 11 | } 12 | 13 | public void setJ(int newj) { 14 | j = newj; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/foo/Controller.java: -------------------------------------------------------------------------------- 1 | package foo; 2 | 3 | public class Controller extends grails.Top { 4 | 5 | public void foo() { 6 | super.foo(); 7 | System.out.println("Controller.foo() running"); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/foo/Controller2.java: -------------------------------------------------------------------------------- 1 | package foo; 2 | 3 | public class Controller2 extends grails.Top { 4 | 5 | public void foo() { 6 | super.foo(); 7 | System.out.println("Controller.foo() running again!"); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/foo/ControllerB.java: -------------------------------------------------------------------------------- 1 | package foo; 2 | 3 | public class ControllerB extends grails.TopB { 4 | 5 | public void foo() { 6 | super.foo(); 7 | System.out.println("ControllerB.foo() running"); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/foo/ControllerB2.java: -------------------------------------------------------------------------------- 1 | package foo; 2 | 3 | public class ControllerB2 extends grails.TopB { 4 | 5 | public void foo() { 6 | super.foo(); 7 | System.out.println("ControllerB.foo() running again!"); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/foo/ControllerC.java: -------------------------------------------------------------------------------- 1 | package foo; 2 | 3 | public class ControllerC extends grails.TopC { 4 | 5 | public void foo() { 6 | super.foo(); 7 | System.out.println("ControllerC.foo() running"); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/foo/ControllerC2.java: -------------------------------------------------------------------------------- 1 | package foo; 2 | 3 | public class ControllerC2 extends grails.TopC { 4 | 5 | public void foo() { 6 | super.foo(); 7 | System.out.println("ControllerC.foo() running again!"); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/foo/ControllerD.java: -------------------------------------------------------------------------------- 1 | package foo; 2 | 3 | public class ControllerD extends grails.TopD { 4 | 5 | public void foo() { 6 | super.foo(); 7 | System.out.println(getMessage()); 8 | } 9 | 10 | private String getMessage() { 11 | return "ControllerD.foo() running"; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/foo/ControllerD2.java: -------------------------------------------------------------------------------- 1 | package foo; 2 | 3 | public class ControllerD2 extends grails.TopD { 4 | 5 | public void foo() { 6 | super.foo(); 7 | System.out.println(getMessage()); 8 | } 9 | 10 | private String getMessage() { 11 | return "ControllerD.foo() running again!"; 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/foo/SubControllerB.java: -------------------------------------------------------------------------------- 1 | package foo; 2 | 3 | public class SubControllerB extends ControllerB { 4 | 5 | public void foo() { 6 | super.foo(); 7 | System.out.println("SubControllerB.foo() running"); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/foo/SubControllerB2.java: -------------------------------------------------------------------------------- 1 | package foo; 2 | 3 | public class SubControllerB2 extends ControllerB { 4 | 5 | public void foo() { 6 | super.foo(); 7 | System.out.println("SubControllerB.foo() running again!"); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/github10/Code.java: -------------------------------------------------------------------------------- 1 | package github10; 2 | 3 | public class Code { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/grails/Top.java: -------------------------------------------------------------------------------- 1 | package grails; 2 | 3 | public class Top { 4 | 5 | public void foo() { 6 | System.out.println("Top.foo() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/grails/TopB.java: -------------------------------------------------------------------------------- 1 | package grails; 2 | 3 | public class TopB { 4 | 5 | protected void foo() { 6 | System.out.println("TopB.foo() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/grails/TopC.java: -------------------------------------------------------------------------------- 1 | package grails; 2 | 3 | public class TopC { 4 | 5 | public void foo() { 6 | System.out.println("TopC.foo() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/grails/TopD.java: -------------------------------------------------------------------------------- 1 | package grails; 2 | 3 | public class TopD { 4 | 5 | protected void foo() { 6 | System.out.println("TopD.foo() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/grails/plugins/A.java: -------------------------------------------------------------------------------- 1 | package grails.plugins; 2 | 3 | public class A { 4 | 5 | public void foo() { 6 | System.out.println("A.foo() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/grails/plugins/B.java: -------------------------------------------------------------------------------- 1 | package grails.plugins; 2 | 3 | public class B extends A { 4 | 5 | public void foo() { 6 | System.out.println("B.foo() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/grails/plugins/B2.java: -------------------------------------------------------------------------------- 1 | package grails.plugins; 2 | 3 | public class B2 extends A { 4 | 5 | public void foo() { 6 | System.out.println("B2.foo() running"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/grails/plugins2/C.java: -------------------------------------------------------------------------------- 1 | package grails.plugins2; 2 | 3 | import grails.plugins.A; 4 | 5 | public class C extends A { 6 | 7 | public void foo() { 8 | System.out.println("C.foo() running"); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/inheritance/A.java: -------------------------------------------------------------------------------- 1 | package inheritance; 2 | 3 | public class A { 4 | 5 | public int foo() { 6 | return 65; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/inheritance/A002.java: -------------------------------------------------------------------------------- 1 | package inheritance; 2 | 3 | public class A002 { 4 | 5 | // removed from supertype 6 | // public int foo() { 7 | // return 65; 8 | // } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/inheritance/B.java: -------------------------------------------------------------------------------- 1 | package inheritance; 2 | 3 | public class B extends A { 4 | 5 | public int foo() { 6 | return 66; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/inheritance/C.java: -------------------------------------------------------------------------------- 1 | package inheritance; 2 | 3 | public class C { 4 | public static void main(String[]argv) { 5 | System.out.println(run()); 6 | } 7 | public static int run() { 8 | A a = new B(); 9 | return a.foo(); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/inners/Four.java: -------------------------------------------------------------------------------- 1 | package inners; 2 | 3 | public class Four { 4 | 5 | public static void runner() { 6 | new Four().run(); 7 | } 8 | 9 | public void run() { 10 | 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/inners/Four2.java: -------------------------------------------------------------------------------- 1 | package inners; 2 | 3 | public class Four2 { 4 | 5 | public static void runner() { 6 | new Four2().run(); 7 | } 8 | 9 | public void run() { 10 | new Inner(); 11 | } 12 | 13 | protected static class Inner { 14 | private Inner() { 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /testdata/src/main/java/inners/One.java: -------------------------------------------------------------------------------- 1 | package inners; 2 | 3 | public class One { 4 | 5 | public static void runner() { 6 | new One().run(); 7 | } 8 | 9 | public void run() { 10 | new Inner(); 11 | } 12 | 13 | static class Inner { 14 | Inner() { 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /testdata/src/main/java/inners/One2.java: -------------------------------------------------------------------------------- 1 | package inners; 2 | 3 | public class One2 { 4 | 5 | public static void runner() { 6 | new One2().run(); 7 | } 8 | 9 | public void run() { 10 | m(); 11 | } 12 | 13 | public void m() { 14 | new Inner(); 15 | } 16 | 17 | static class Inner { 18 | Inner() { 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /testdata/src/main/java/inners/Outer.java: -------------------------------------------------------------------------------- 1 | package inners; 2 | 3 | public class Outer { 4 | 5 | public static class Inner { 6 | public String foo() { 7 | return "foo!"; 8 | } 9 | public int getModifiers() { 10 | return this.getClass().getModifiers(); 11 | } 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/inners/Outer2.java: -------------------------------------------------------------------------------- 1 | package inners; 2 | 3 | public class Outer2 { 4 | 5 | public static class Inner2 { 6 | public String foo() { 7 | return "bar!"; 8 | } 9 | 10 | public int getModifiers() { 11 | return this.getClass().getModifiers(); 12 | } 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /testdata/src/main/java/inners/Three.java: -------------------------------------------------------------------------------- 1 | package inners; 2 | 3 | public class Three { 4 | 5 | public static void runner() { 6 | new Three().run(); 7 | } 8 | 9 | public void run() { 10 | 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/inners/Three2.java: -------------------------------------------------------------------------------- 1 | package inners; 2 | 3 | public class Three2 { 4 | 5 | public static void runner() { 6 | new Three2().run(); 7 | } 8 | 9 | public void run() { 10 | new Inner(); 11 | } 12 | 13 | private static class Inner { 14 | private Inner() { 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /testdata/src/main/java/inners/Two.java: -------------------------------------------------------------------------------- 1 | package inners; 2 | 3 | public class Two { 4 | 5 | public static void runner() { 6 | new Two().run(); 7 | } 8 | 9 | public void run() { 10 | 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/inners/Two2.java: -------------------------------------------------------------------------------- 1 | package inners; 2 | 3 | public class Two2 { 4 | 5 | public static void runner() { 6 | new Two2().run(); 7 | } 8 | 9 | public void run() { 10 | m(); 11 | } 12 | 13 | public void m() { 14 | new TwoDefault(); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/inners/TwoDefault.java: -------------------------------------------------------------------------------- 1 | package inners; 2 | 3 | class TwoDefault { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfacerewriting/TheImpl.java: -------------------------------------------------------------------------------- 1 | package interfacerewriting; 2 | 3 | public class TheImpl implements TheInterface { 4 | 5 | public void someMethod(String str) { 6 | } 7 | 8 | public double doubleIt(int i) { 9 | return i * 2; 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfacerewriting/TheImpl002.java: -------------------------------------------------------------------------------- 1 | package interfacerewriting; 2 | 3 | public class TheImpl002 implements TheInterface002 { 4 | 5 | public void someMethod(String str) { 6 | 7 | } 8 | 9 | public double doubleIt(int i) { 10 | return i * 2; 11 | } 12 | 13 | public String foobar() { 14 | return "abc"; 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfacerewriting/TheInterface.java: -------------------------------------------------------------------------------- 1 | package interfacerewriting; 2 | 3 | public interface TheInterface { 4 | 5 | void someMethod(String str); 6 | 7 | double doubleIt(int i); 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfacerewriting/TheInterface002.java: -------------------------------------------------------------------------------- 1 | package interfacerewriting; 2 | 3 | public interface TheInterface002 { 4 | 5 | void someMethod(String str); 6 | 7 | double doubleIt(int i); 8 | 9 | String foobar(); 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfacerewriting/TheRunner.java: -------------------------------------------------------------------------------- 1 | package interfacerewriting; 2 | 3 | public class TheRunner { 4 | 5 | TheInterface ti = new TheImpl(); 6 | 7 | public String run() { 8 | return null; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfacerewriting/TheRunner002.java: -------------------------------------------------------------------------------- 1 | package interfacerewriting; 2 | 3 | public class TheRunner002 { 4 | 5 | TheInterface002 ti = new TheImpl002(); 6 | 7 | public String run() { 8 | return ti.foobar(); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfaces/Runner.java: -------------------------------------------------------------------------------- 1 | package interfaces; 2 | 3 | public class Runner { 4 | 5 | public static TheInterface x = new TheImplementation(); 6 | 7 | public int runGetValue() { 8 | return x.getValue(); 9 | } 10 | 11 | public String runToString() { 12 | return x.toString(); 13 | } 14 | 15 | public String doit() { 16 | return x.doit(); 17 | } 18 | 19 | } 20 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfaces/TheImplementation.java: -------------------------------------------------------------------------------- 1 | package interfaces; 2 | 3 | public class TheImplementation implements TheInterface { 4 | 5 | public int getValue() { 6 | return 35; 7 | } 8 | 9 | public String doit() { 10 | return ""; // filled in later 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfaces/TheImplementation002.java: -------------------------------------------------------------------------------- 1 | package interfaces; 2 | 3 | public class TheImplementation002 implements TheInterface { 4 | 5 | public int getValue() { 6 | return 23; 7 | } 8 | 9 | public String doit() { 10 | return null; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfaces/TheImplementation003.java: -------------------------------------------------------------------------------- 1 | package interfaces; 2 | 3 | public class TheImplementation003 implements TheInterface { 4 | 5 | public int getValue() { 6 | return 23; 7 | } 8 | 9 | public String toString() { 10 | return "i am version 3"; 11 | } 12 | 13 | public String doit() { 14 | return null; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfaces/TheInterface.java: -------------------------------------------------------------------------------- 1 | package interfaces; 2 | 3 | public interface TheInterface { 4 | 5 | int getValue(); 6 | 7 | String doit(); 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/interfaces/TheInterface004.java: -------------------------------------------------------------------------------- 1 | package interfaces; 2 | 3 | public interface TheInterface004 { 4 | 5 | int getValue(); 6 | 7 | String newmethod(); 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/A.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class A { 4 | 5 | public int getInt() { 6 | return 65; 7 | } 8 | 9 | public String toString(boolean b, String s) { 10 | return new StringBuilder("65").append(b).append(s).toString(); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/A002.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class A002 { 4 | 5 | // public int getInt() { 6 | // return 65; 7 | // } 8 | 9 | // public String toString(boolean b, String s) { 10 | // return new StringBuilder("65").append(b).append(s).toString(); 11 | // } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/B.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class B extends A { 4 | 5 | public int getInt() { 6 | return 66; 7 | } 8 | 9 | public String toString(boolean b, String s) { 10 | return new StringBuilder("66").append(b).append(s).toString(); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/B002.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class B002 extends A { 4 | 5 | // public int getInt() { 6 | // return 66; 7 | // } 8 | 9 | // public String toString(boolean b, String s) { 10 | // return new StringBuilder("66").append(b).append(s).toString(); 11 | // } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/P.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class P { 4 | public int foo() { 5 | return 1; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/P002.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class P002 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/Q.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class Q extends P { 4 | public int foo() { 5 | return 2; 6 | } 7 | 8 | public int run() { 9 | return super.foo(); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/R.java: -------------------------------------------------------------------------------- 1 | //package invokespecial; 2 | // 3 | //public class R extends Q { 4 | // public int foo() { 5 | // return 3; 6 | // } 7 | //} 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/X.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class X { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/X002.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class X002 { 4 | 5 | public String foo() { 6 | return "X002.foo"; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/XX.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class XX { 4 | 5 | public int foo() { 6 | return 1; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/Y.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class Y extends X { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/Y002.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class Y002 extends X002 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/Y003.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class Y003 extends X002 { 4 | 5 | public String foo() { 6 | return "Y003.foo"; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/YY.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class YY extends XX { 4 | 5 | public int foo() { 6 | return 2; 7 | } 8 | 9 | public int run() { 10 | return foo(); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/YY002.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class YY002 extends XX { 4 | 5 | public int foo() { 6 | return 2; 7 | } 8 | 9 | public int run() { 10 | return super.foo(); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/Z.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class Z extends Y { 4 | 5 | public String run() { 6 | return ""; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokespecial/Z002.java: -------------------------------------------------------------------------------- 1 | package invokespecial; 2 | 3 | public class Z002 extends Y002 { 4 | 5 | public String run() { 6 | return super.foo(); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/A.java: -------------------------------------------------------------------------------- 1 | package invokestatic; 2 | 3 | public class A { 4 | public static String run() { 5 | return "hello"; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/A2.java: -------------------------------------------------------------------------------- 1 | package invokestatic; 2 | 3 | public class A2 { 4 | 5 | public static String helper() { 6 | return "world"; 7 | } 8 | 9 | public static String run() { 10 | return helper(); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/B.java: -------------------------------------------------------------------------------- 1 | package invokestatic; 2 | 3 | public class B { 4 | 5 | private static String somemethod() { 6 | return "hello"; 7 | } 8 | 9 | public String run() { 10 | return somemethod(); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/B2.java: -------------------------------------------------------------------------------- 1 | package invokestatic; 2 | 3 | public class B2 { 4 | 5 | private static String somemethod() { 6 | return "goodbye"; 7 | } 8 | 9 | public String run() { 10 | return somemethod(); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/issue4/A.java: -------------------------------------------------------------------------------- 1 | package invokestatic.issue4; 2 | 3 | public class A { 4 | 5 | public static String getString() { 6 | return "String1"; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/issue4/AA.java: -------------------------------------------------------------------------------- 1 | package invokestatic.issue4; 2 | 3 | public class AA { 4 | 5 | public static String getString() { 6 | return "String1"; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/issue4/AAA.java: -------------------------------------------------------------------------------- 1 | package invokestatic.issue4; 2 | 3 | public class AAA { 4 | 5 | public static String getString() { 6 | return "String1"; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/issue4/AB.java: -------------------------------------------------------------------------------- 1 | package invokestatic.issue4; 2 | 3 | public class AB extends codeforjar.A { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/issue4/B.java: -------------------------------------------------------------------------------- 1 | package invokestatic.issue4; 2 | 3 | public class B extends A { 4 | 5 | public static String getMessage() { 6 | return getString(); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/issue4/BB.java: -------------------------------------------------------------------------------- 1 | package invokestatic.issue4; 2 | 3 | public class BB extends AA { 4 | 5 | public static String getMessage() { 6 | return BB.getString(); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/issue4/BBB.java: -------------------------------------------------------------------------------- 1 | package invokestatic.issue4; 2 | 3 | public class BBB extends AAA { 4 | 5 | public static String getMessage() { 6 | return AAA.getString(); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/issue4/BBBB.java: -------------------------------------------------------------------------------- 1 | package invokestatic.issue4; 2 | 3 | public class BBBB extends codeforjar.A { 4 | 5 | public static String getMessage() { 6 | return getString(); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokestatic/issue4/BBBBB.java: -------------------------------------------------------------------------------- 1 | package invokestatic.issue4; 2 | 3 | public class BBBBB extends AB { 4 | 5 | public static String getMessage() { 6 | return getString(); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/A.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class A { 4 | 5 | public static void run() { 6 | B b = new B(); 7 | b.foo(); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/A2.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class A2 { 4 | 5 | public static void run() { 6 | B2 b = new B2(); 7 | b.bar(); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/AA.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class AA { 4 | 5 | public static String callfoo() { 6 | BB b = new BB(); 7 | return b.foo(); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/AA2.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class AA2 { 4 | 5 | public static String callfoo() { 6 | BB2 b = new BB2(); 7 | return b.foo(); 8 | } 9 | 10 | public static String callbar() { 11 | BB2 b = new BB2(); 12 | return b.bar(); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/B.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class B { 4 | 5 | public void foo() { 6 | } 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/B2.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class B2 { 4 | 5 | public void bar() { 6 | } 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/BB.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class BB extends CC { 4 | 5 | public String foo() { 6 | return "hi from BB.foo"; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/BB2.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class BB2 extends CC { 4 | 5 | public String foo() { 6 | return "hi from BB2.foo"; 7 | } 8 | 9 | public String bar() { 10 | return "hi from BB2.bar"; 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/BB3.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class BB3 extends CC { 4 | 5 | public String bar() { 6 | return "hi from BB2.bar"; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/CC.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class CC { 4 | public String foo() { 5 | return "hi from CC.foo"; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/X.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class X { 4 | 5 | public int foo() { 6 | return 1111; 7 | } 8 | 9 | public int run() { 10 | Y y = new Y(); 11 | return y.foo(); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/Y.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class Y extends X { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/Y002.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class Y002 extends X { 4 | public int foo() { 5 | return 2222; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/YY.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class YY extends XX { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/YY002.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class YY002 extends XX { 4 | public int foo() { 5 | return 3333; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/invokevirtual/ZZ.java: -------------------------------------------------------------------------------- 1 | package invokevirtual; 2 | 3 | public class ZZ extends YY { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/issue34/Implementation1.java: -------------------------------------------------------------------------------- 1 | package issue34; 2 | 3 | public abstract class Implementation1 implements Interface1 { 4 | 5 | @Override 6 | public final T process1(T type) { 7 | return type; 8 | } 9 | 10 | } -------------------------------------------------------------------------------- /testdata/src/main/java/issue34/Implementation2.java: -------------------------------------------------------------------------------- 1 | package issue34; 2 | public abstract class Implementation2 extends Implementation1 implements Interface2 { 3 | 4 | } -------------------------------------------------------------------------------- /testdata/src/main/java/issue34/Implementation3.java: -------------------------------------------------------------------------------- 1 | package issue34; 2 | public class Implementation3 extends Implementation2 { 3 | 4 | public static void main(String [] args) { 5 | System.out.println("Hello World!"); 6 | } 7 | 8 | public static void run() { 9 | Implementation3.main(null); 10 | } 11 | 12 | } -------------------------------------------------------------------------------- /testdata/src/main/java/issue34/Interface1.java: -------------------------------------------------------------------------------- 1 | package issue34; 2 | public interface Interface1 { 3 | 4 | public T process1(T type); 5 | 6 | } -------------------------------------------------------------------------------- /testdata/src/main/java/issue34/Interface2.java: -------------------------------------------------------------------------------- 1 | package issue34; 2 | public interface Interface2 extends Interface1 { 3 | 4 | } -------------------------------------------------------------------------------- /testdata/src/main/java/jvmtwo/Runner.java: -------------------------------------------------------------------------------- 1 | package jvmtwo; 2 | 3 | public class Runner { 4 | 5 | public static void main(String[] argv) { 6 | run(); 7 | } 8 | 9 | public static void run() { 10 | System.out.print("jvmtwo.Runner.run() running"); 11 | } 12 | 13 | public void run1() { 14 | System.out.print("jvmtwo.Runner.run1() running"); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /testdata/src/main/java/methoddeletion/TypeA.java: -------------------------------------------------------------------------------- 1 | package methoddeletion; 2 | 3 | public class TypeA { 4 | 5 | public void forDeletion() { 6 | 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/methoddeletion/TypeA2.java: -------------------------------------------------------------------------------- 1 | package methoddeletion; 2 | 3 | public class TypeA2 { 4 | 5 | // removed 6 | // public void forDeletion() { 7 | // 8 | // } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/perf/one/Target.java: -------------------------------------------------------------------------------- 1 | package perf.one; 2 | 3 | public class Target { 4 | 5 | int j; 6 | 7 | public void foo() { 8 | for (int i = 0; i < 100; i++) { 9 | j = 5; 10 | } 11 | } 12 | 13 | public int bar(int i) { 14 | j = 5; 15 | return i; 16 | } 17 | 18 | public void goo(String s, int i) { 19 | j = 5; 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /testdata/src/main/java/perf/one/TargetB.java: -------------------------------------------------------------------------------- 1 | package perf.one; 2 | 3 | public class TargetB { 4 | 5 | int j; 6 | 7 | public void foo() { 8 | for (int i = 0; i < 20; i++) { 9 | j = 5; 10 | } 11 | } 12 | 13 | public int bar(int i) { 14 | j = 5; 15 | return i; 16 | } 17 | 18 | public void goo(String s, int i) { 19 | j = 5; 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /testdata/src/main/java/plugins/One.java: -------------------------------------------------------------------------------- 1 | package plugins; 2 | 3 | public class One { 4 | 5 | // default ctor 6 | public One() { 7 | } 8 | 9 | /** 10 | * These comments prevent the unused warning ;) 11 | * 12 | * @param string 13 | * @param i 14 | */ 15 | public One(String string, int i) { 16 | } 17 | 18 | public void run() { 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /testdata/src/main/java/prot/PeerThree.java: -------------------------------------------------------------------------------- 1 | package prot; 2 | 3 | public class PeerThree { 4 | 5 | public int aField; 6 | 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/prot/SubTwo.java: -------------------------------------------------------------------------------- 1 | package prot; 2 | 3 | public class SubTwo extends Two { 4 | 5 | public int someField; 6 | 7 | public int getSomeField() { 8 | return someField; 9 | } 10 | 11 | public void setSomeField(int i) { 12 | this.someField = i; 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/prot/Three.java: -------------------------------------------------------------------------------- 1 | package prot; 2 | 3 | public class Three { 4 | 5 | protected int aField; 6 | 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/prot/Two.java: -------------------------------------------------------------------------------- 1 | package prot; 2 | 3 | public class Two { 4 | 5 | protected int someField; 6 | 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/proxy/TestIntfaceA1.java: -------------------------------------------------------------------------------- 1 | package proxy; 2 | 3 | public interface TestIntfaceA1 { 4 | void m(); 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/proxy/TestIntfaceA2.java: -------------------------------------------------------------------------------- 1 | package proxy; 2 | 3 | public interface TestIntfaceA2 { 4 | void m(); 5 | 6 | void n(); 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/proxy/three/TestIntfaceA1.java: -------------------------------------------------------------------------------- 1 | package proxy.three; 2 | 3 | interface TestIntfaceA1 { 4 | void ma(); 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/proxy/three/TestIntfaceA2.java: -------------------------------------------------------------------------------- 1 | package proxy.three; 2 | 3 | interface TestIntfaceA2 { 4 | void ma(); 5 | 6 | void na(); 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/proxy/three/TestIntfaceB1.java: -------------------------------------------------------------------------------- 1 | package proxy.three; 2 | 3 | interface TestIntfaceB1 { 4 | void mb(); 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/proxy/three/TestIntfaceB2.java: -------------------------------------------------------------------------------- 1 | package proxy.three; 2 | 3 | interface TestIntfaceB2 { 4 | void mb(); 5 | 6 | void nb(); 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/proxy/two/TestIntfaceA1.java: -------------------------------------------------------------------------------- 1 | package proxy.two; 2 | 3 | interface TestIntfaceA1 { 4 | void m(); 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/proxy/two/TestIntfaceA2.java: -------------------------------------------------------------------------------- 1 | package proxy.two; 2 | 3 | interface TestIntfaceA2 { 4 | void m(); 5 | 6 | void n(); 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/AnnoT.java: -------------------------------------------------------------------------------- 1 | package reflection; 2 | 3 | import java.lang.annotation.Retention; 4 | import java.lang.annotation.RetentionPolicy; 5 | 6 | @Retention(RetentionPolicy.RUNTIME) 7 | public @interface AnnoT { 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/AnnoT2.java: -------------------------------------------------------------------------------- 1 | package reflection; 2 | 3 | import java.lang.annotation.Retention; 4 | import java.lang.annotation.RetentionPolicy; 5 | 6 | @Retention(RetentionPolicy.RUNTIME) 7 | public @interface AnnoT2 { 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/AnnoT3.java: -------------------------------------------------------------------------------- 1 | package reflection; 2 | 3 | import java.lang.annotation.Retention; 4 | import java.lang.annotation.RetentionPolicy; 5 | 6 | @Retention(RetentionPolicy.RUNTIME) 7 | public @interface AnnoT3 { 8 | String value(); 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/AnnoTInherit.java: -------------------------------------------------------------------------------- 1 | package reflection; 2 | 3 | import java.lang.annotation.Inherited; 4 | import java.lang.annotation.Retention; 5 | import java.lang.annotation.RetentionPolicy; 6 | 7 | @Inherited 8 | @Retention(RetentionPolicy.RUNTIME) 9 | public @interface AnnoTInherit { 10 | String value(); 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/CTAnnoT.java: -------------------------------------------------------------------------------- 1 | package reflection; 2 | 3 | import java.lang.annotation.Retention; 4 | import java.lang.annotation.RetentionPolicy; 5 | 6 | @Retention(RetentionPolicy.CLASS) 7 | public @interface CTAnnoT { 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/Invoker.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/src/main/java/reflection/Invoker.class -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/NonReloadableSuperClass.java: -------------------------------------------------------------------------------- 1 | package reflection; 2 | 3 | public class NonReloadableSuperClass { 4 | 5 | public String interfaceMethod() { 6 | return "NonReloadableSuperClass.interfaceMethod"; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/SubTestVal.java: -------------------------------------------------------------------------------- 1 | package reflection; 2 | 3 | public class SubTestVal extends TestVal { 4 | 5 | public static final SubTestVal it = new SubTestVal(); 6 | 7 | @Override 8 | public String toString() { 9 | return "SubTestVal"; 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/Target.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/src/main/java/reflection/Target.class -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/Target002.java: -------------------------------------------------------------------------------- 1 | package reflection; 2 | 3 | public class Target002 { 4 | 5 | // public String s; 6 | public int i; 7 | public boolean[] zs; 8 | public Integer[] is; 9 | boolean z; 10 | byte b; 11 | public short s; 12 | char c; 13 | public long j; 14 | public float f; 15 | double d; 16 | 17 | @AnnoT2 18 | public String annotated; 19 | } 20 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/bridgemethods/ClassWithBridgeMethod.java: -------------------------------------------------------------------------------- 1 | package reflection.bridgemethods; 2 | 3 | public class ClassWithBridgeMethod implements Cloneable { 4 | 5 | @Override 6 | protected Object clone() throws CloneNotSupportedException { 7 | return this; 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/bridgemethods/ClassWithBridgeMethod002.java: -------------------------------------------------------------------------------- 1 | package reflection.bridgemethods; 2 | 3 | public class ClassWithBridgeMethod002 implements Cloneable { 4 | 5 | @Override 6 | protected ClassWithBridgeMethod002 clone() throws CloneNotSupportedException { 7 | return this; 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classannotations/ClassTarget.java: -------------------------------------------------------------------------------- 1 | package reflection.classannotations; 2 | 3 | import reflection.AnnoT; 4 | import reflection.AnnoTInherit; 5 | 6 | @AnnoTInherit("C000") @AnnoT 7 | public class ClassTarget { 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classannotations/ClassTarget002.java: -------------------------------------------------------------------------------- 1 | package reflection.classannotations; 2 | 3 | import reflection.AnnoT2; 4 | import reflection.AnnoTInherit; 5 | 6 | @AnnoTInherit("C002") @AnnoT2 7 | public class ClassTarget002 { 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classannotations/ClassTarget003.java: -------------------------------------------------------------------------------- 1 | package reflection.classannotations; 2 | 3 | import reflection.AnnoT3; 4 | 5 | @AnnoT3("003") 6 | public class ClassTarget003 { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classannotations/InterfaceTarget.java: -------------------------------------------------------------------------------- 1 | package reflection.classannotations; 2 | 3 | import reflection.AnnoT; 4 | import reflection.AnnoTInherit; 5 | 6 | @AnnoTInherit("I001") 7 | @AnnoT 8 | public interface InterfaceTarget { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classannotations/InterfaceTarget002.java: -------------------------------------------------------------------------------- 1 | package reflection.classannotations; 2 | 3 | import reflection.AnnoT2; 4 | import reflection.AnnoTInherit; 5 | 6 | @AnnoTInherit("I002") 7 | @AnnoT2 8 | public interface InterfaceTarget002 { 9 | 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classannotations/InterfaceTarget003.java: -------------------------------------------------------------------------------- 1 | package reflection.classannotations; 2 | 3 | import reflection.AnnoT3; 4 | import reflection.AnnoTInherit; 5 | 6 | @AnnoTInherit("I003") @AnnoT3("IT3") 7 | public interface InterfaceTarget003 { 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classannotations/SubClassTarget.java: -------------------------------------------------------------------------------- 1 | package reflection.classannotations; 2 | 3 | import reflection.AnnoTInherit; 4 | 5 | @AnnoTInherit("S001") 6 | public class SubClassTarget extends ClassTarget implements InterfaceTarget { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classannotations/SubClassTarget002.java: -------------------------------------------------------------------------------- 1 | package reflection.classannotations; 2 | 3 | import reflection.AnnoTInherit; 4 | 5 | @AnnoTInherit("S002") 6 | public class SubClassTarget002 extends ClassTarget implements InterfaceTarget { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classannotations/SubClassTarget003.java: -------------------------------------------------------------------------------- 1 | package reflection.classannotations; 2 | 3 | public class SubClassTarget003 extends ClassTarget implements InterfaceTarget { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classannotations/SubInterfaceTarget.java: -------------------------------------------------------------------------------- 1 | package reflection.classannotations; 2 | 3 | import reflection.AnnoT; 4 | 5 | @AnnoT 6 | public interface SubInterfaceTarget extends InterfaceTarget { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classannotations/SubInterfaceTarget002.java: -------------------------------------------------------------------------------- 1 | package reflection.classannotations; 2 | 3 | import reflection.AnnoT2; 4 | 5 | @AnnoT2 6 | public interface SubInterfaceTarget002 extends InterfaceTarget { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classmodifiers/ClassTarget.java: -------------------------------------------------------------------------------- 1 | package reflection.classmodifiers; 2 | 3 | public class ClassTarget { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/classmodifiers/ClassTarget003.java: -------------------------------------------------------------------------------- 1 | package reflection.classmodifiers; 2 | 3 | public class ClassTarget003 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/fields/InterfaceTarget.java: -------------------------------------------------------------------------------- 1 | package reflection.fields; 2 | 3 | public interface InterfaceTarget { 4 | 5 | //TODO: currently we do not have tests that focus directly on interfaces and fields. 6 | 7 | int iField = 999; 8 | int iDeletedField = 100; 9 | int iChangedField = 101; 10 | 11 | } -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/fields/InterfaceTarget002.java: -------------------------------------------------------------------------------- 1 | package reflection.fields; 2 | 3 | public interface InterfaceTarget002 { 4 | 5 | int iField = 666; 6 | String iChangedField = "changedField"; 7 | 8 | String iAddedField = "newField"; 9 | 10 | } -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/fields/S1InterfaceTarget.java: -------------------------------------------------------------------------------- 1 | package reflection.fields; 2 | 3 | public interface S1InterfaceTarget extends InterfaceTarget { 4 | 5 | int iField = 1; 6 | int i1Field = 2; 7 | 8 | } -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/fields/S1InterfaceTarget002.java: -------------------------------------------------------------------------------- 1 | package reflection.fields; 2 | 3 | public interface S1InterfaceTarget002 extends InterfaceTarget { 4 | 5 | int iField = 1; 6 | int i1AddedField = 201; 7 | 8 | } -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/fields/S2InterfaceTarget.java: -------------------------------------------------------------------------------- 1 | package reflection.fields; 2 | 3 | public interface S2InterfaceTarget extends InterfaceTarget, S1InterfaceTarget { 4 | 5 | int i2Field = 2222; 6 | 7 | } -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/fields/S2InterfaceTarget002.java: -------------------------------------------------------------------------------- 1 | package reflection.fields; 2 | 3 | public interface S2InterfaceTarget002 extends InterfaceTarget, S1InterfaceTarget { 4 | 5 | int i2Field = 222; 6 | int i2Added = 202; 7 | 8 | } -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/generics/GenericInterface.java: -------------------------------------------------------------------------------- 1 | package reflection.generics; 2 | 3 | public interface GenericInterface { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/methodannotations/InterfaceTarget003.java: -------------------------------------------------------------------------------- 1 | package reflection.methodannotations; 2 | 3 | import reflection.AnnoT; 4 | import reflection.AnnoT3; 5 | 6 | public interface InterfaceTarget003 { 7 | 8 | @AnnoT3("shiny") 9 | Object brandNew(@AnnoT int x); 10 | 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/reflection/Invoker.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/src/main/java/reflection/reflection/Invoker.class -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/reflection/Target.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/spring-projects/spring-loaded/d1c4385aba630d73630219b08af276db15f156c7/testdata/src/main/java/reflection/reflection/Target.class -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/ChangeModClass.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | public class ChangeModClass { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/ChangeModClass002.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | final class ChangeModClass002 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/DefaultClass.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | class DefaultClass { 4 | 5 | public int publicMethod() { 6 | return 82; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/DefaultClass002.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | class DefaultClass002 { 4 | 5 | public int publicMethod() { 6 | return 999; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/GetMethodClass.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | public abstract class GetMethodClass implements GetMethodInterface { 4 | 5 | public void im1(int a, String b) { 6 | } 7 | 8 | public boolean sim2(int a, String b) { 9 | return false; 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/GetMethodInterface.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | /** 4 | * Used by ClassGetMethodsTest 5 | * @author kdvolder 6 | */ 7 | public interface GetMethodInterface { 8 | 9 | void im1(int a, String b); 10 | boolean im2(int a, String b); 11 | 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/GetMethodInterface002.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | /** 4 | * Used by ClassGetMethodsTest 5 | * @author kdvolder 6 | */ 7 | public interface GetMethodInterface002 { 8 | 9 | void im1(int a, String b); 10 | void sim1(int a, String b); 11 | boolean im2(int a, String b); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/GetMethodSubClass.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | public abstract class GetMethodSubClass extends GetMethodClass implements GetMethodSubInterface { 4 | 5 | @Override 6 | public void sim1(int a, String b) { 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/GetMethodSubClass002.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | public abstract class GetMethodSubClass002 extends GetMethodClass implements GetMethodSubInterface { 4 | 5 | @Override 6 | public void sim1(int a, String b) { 7 | } 8 | 9 | public void im1(int a, String b) { 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/GetMethodSubInterface.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | /** 4 | * Used by ClassGetMethodsTest 5 | * @author kdvolder 6 | */ 7 | public interface GetMethodSubInterface extends GetMethodInterface { 8 | 9 | void sim1(int a, String b); 10 | boolean sim2(int a, String b); 11 | 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/GetMethodSubInterface002.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | /** 4 | * Used by ClassGetMethodsTest 5 | * @author kdvolder 6 | */ 7 | public interface GetMethodSubInterface002 extends GetMethodInterface { 8 | 9 | boolean sim2(int a, String b); 10 | String[] addedMethod(); 11 | 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/InterfaceTarget.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | public interface InterfaceTarget { 4 | 5 | static final String CONSTANT = "Hello Constrant"; 6 | static final double PI = 3.14; 7 | 8 | String interfaceMethod(); 9 | int deletedInterfaceMethod(); 10 | 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/InterfaceTarget002.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | public interface InterfaceTarget002 { 4 | 5 | static final String CONSTANT = "Hello Constrant"; 6 | static final double PI = 3.14; 7 | 8 | String interfaceMethod(); 9 | void addedInterfaceMethod(); 10 | 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/MyFrame.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | import java.awt.Frame; 4 | 5 | @SuppressWarnings("serial") 6 | public class MyFrame extends Frame { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/MyFrame002.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | import java.awt.Frame; 4 | 5 | @SuppressWarnings("serial") 6 | public class MyFrame002 extends Frame { 7 | void extraMethod() {} 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/SubClassImplementsInterface.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | import reflection.NonReloadableSuperClass; 4 | 5 | public class SubClassImplementsInterface extends NonReloadableSuperClass implements InterfaceTarget { 6 | 7 | @Override 8 | public int deletedInterfaceMethod() { 9 | return 0; 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/reflection/targets/SubClassTarget003.java: -------------------------------------------------------------------------------- 1 | package reflection.targets; 2 | 3 | public class SubClassTarget003 extends ClassTarget { 4 | 5 | @Override 6 | protected String protectedMethod() { 7 | return "SubClassTarget003.protectedMethod"; 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/remote/One.java: -------------------------------------------------------------------------------- 1 | package remote; 2 | 3 | public class One { 4 | 5 | public void run() { 6 | System.out.print("first"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/remote/One2.java: -------------------------------------------------------------------------------- 1 | package remote; 2 | 3 | public class One2 { 4 | 5 | public void run() { 6 | System.out.print("second"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/A.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | public class A { 4 | public static int i = 45; 5 | } -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/B.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | public class B extends A implements I { 4 | 5 | public int getI() { 6 | return i; 7 | } 8 | } -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/C.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | public class C { 4 | public static int i = 3; 5 | } -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/D.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | public class D extends C { 4 | 5 | public static int i = 4; 6 | 7 | } -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/D2.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | public class D2 extends C { 4 | 5 | //public static int i = 4; // makes the one in C visible now 6 | 7 | } -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/E.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | public class E extends D { 4 | 5 | public int getI() { 6 | return i; 7 | } 8 | 9 | public void setI(int newvalue) { 10 | i = newvalue; 11 | } 12 | 13 | public static void main(String[] args) { 14 | System.out.println(i); 15 | } 16 | } -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/I.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | interface I { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/I2.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | interface I2 { 4 | int i = 35; 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/X.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | public interface X { 4 | int i = 34; 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/X2.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | public interface X2 { 4 | int i = 34; 5 | int j = 38; 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/Y.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | public class Y implements X { 4 | 5 | public int getnum() { 6 | return i; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/sfields/Y2.java: -------------------------------------------------------------------------------- 1 | package sfields; 2 | 3 | public class Y2 implements X2 { 4 | 5 | public int getnum() { 6 | return j; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/springloaded.properties: -------------------------------------------------------------------------------- 1 | reloadable.packages=data..* 2 | 3 | # options here are: 4 | # DEFAULT (the standard set) 5 | # NONE (don't exclude any) 6 | # com.foo.BarLoader,com.foo.FooLoader 7 | excluded.loaders=NONE -------------------------------------------------------------------------------- /testdata/src/main/java/supercalls/Runner.java: -------------------------------------------------------------------------------- 1 | package supercalls; 2 | 3 | public class Runner { 4 | 5 | public static Super top = new Super(); 6 | public static Sub bottom = new Sub(); 7 | 8 | public int runSubMethod() { 9 | return bottom.method(); 10 | } 11 | 12 | public String runSubToString() { 13 | return bottom.toString(); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/supercalls/Sub.java: -------------------------------------------------------------------------------- 1 | package supercalls; 2 | 3 | public class Sub extends Super { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/supercalls/Sub002.java: -------------------------------------------------------------------------------- 1 | package supercalls; 2 | 3 | public class Sub002 extends Super { 4 | public int method() { 5 | return super.method(); 6 | } 7 | // 8 | // public String toString() { 9 | // return super.toString(); 10 | // } 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/supercalls/Super.java: -------------------------------------------------------------------------------- 1 | package supercalls; 2 | 3 | public class Super { 4 | public int method() { 5 | return 42; 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/test/Initializers.java: -------------------------------------------------------------------------------- 1 | package test; 2 | 3 | public class Initializers { 4 | 5 | static { 6 | System.out.println("abc"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/test/Interface.java: -------------------------------------------------------------------------------- 1 | package test; 2 | 3 | public interface Interface { 4 | 5 | int i = 234; 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/test/SubInitializers.java: -------------------------------------------------------------------------------- 1 | package test; 2 | 3 | public class SubInitializers extends Initializers { 4 | 5 | static { 6 | System.out.println("def"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/test/SubInterface.java: -------------------------------------------------------------------------------- 1 | package test; 2 | 3 | public interface SubInterface extends Interface { 4 | 5 | int j = 456; 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/testapp/Demo.java: -------------------------------------------------------------------------------- 1 | package testapp; 2 | 3 | /** 4 | * Simple Demo class for running with Spring Loaded - does it behave? 5 | * 6 | * 7 | */ 8 | public class Demo { 9 | 10 | public static void main(String[] args) { 11 | 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleClass.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class SimpleClass { 4 | public static int toInt(String s) { 5 | return Integer.parseInt(s); 6 | } 7 | 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleClass002.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class SimpleClass002 { 4 | public static int toInt(String s) { 5 | return Integer.parseInt(s); 6 | } 7 | 8 | public static String fromInt(int i) { 9 | return Integer.toString(i); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleClass003.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class SimpleClass003 { 4 | public static int toInt(String s) { 5 | return Integer.parseInt(s); 6 | } 7 | 8 | public static String fromInt(int i) { 9 | return Integer.toString(i); 10 | } 11 | 12 | public static int getMe42() { 13 | return 42; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleClass004.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class SimpleClass004 { 4 | public static int toInt(String s) { 5 | return 256; 6 | } 7 | 8 | public static String fromInt(int i) { 9 | return Integer.toString(i); 10 | } 11 | 12 | public static int getMe42() { 13 | return 42; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleClass005.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class SimpleClass005 { 4 | } 5 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleClass006.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class SimpleClass006 { 4 | public int toInt(String s) { 5 | return Integer.parseInt(s); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleClass007.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class SimpleClass007 { 4 | @SuppressWarnings("unused") 5 | private static int toInt(String s) { 6 | return 222; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleI.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public interface SimpleI { 4 | int toInt(String s); 5 | 6 | int changingReturnType(); 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleI002.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public interface SimpleI002 { 4 | int toInt(String s); 5 | 6 | String fromInt(); 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleI003.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public interface SimpleI003 { 4 | int toInt(String s); 5 | 6 | String stringify(double d, int i, long l, boolean b); 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleI004.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public interface SimpleI004 { 4 | // method removed 5 | // int toInt(String s); 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleI005.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public interface SimpleI005 { 4 | int toInt(int s); 5 | 6 | String changingReturnType(); 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleIClass.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class SimpleIClass implements SimpleI { 4 | public int toInt(String s) { 5 | return Integer.parseInt(s); 6 | } 7 | 8 | public String fromInt() { 9 | return Integer.toString(42); 10 | } 11 | 12 | public int changingReturnType() { 13 | return 111; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleIClassTwo.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class SimpleIClassTwo implements SimpleITwo { 4 | public int toInt(String s) { 5 | return Integer.parseInt(s); 6 | } 7 | 8 | public String fromLong(long l) { 9 | return Long.toString(l); 10 | } 11 | 12 | } 13 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleITwo.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public interface SimpleITwo { 4 | int toInt(String s); 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/SimpleITwo002.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public interface SimpleITwo002 { 4 | int toInt(String s); 5 | 6 | String fromLong(long l); 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/StaticCaller.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class StaticCaller { 4 | public int run() { 5 | return SimpleClass.toInt("123"); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/StaticCaller002.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class StaticCaller002 { 4 | public String run2() { 5 | return SimpleClass002.fromInt(456); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/StaticCaller003.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class StaticCaller003 { 4 | public String run3() { 5 | return Integer.toString(SimpleClass003.getMe42()); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/StaticICaller.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class StaticICaller { 4 | public int run() { 5 | SimpleI si = new SimpleIClass(); 6 | return si.toInt("123"); 7 | } 8 | 9 | public Object run2() { 10 | SimpleI si = new SimpleIClass(); 11 | return si.changingReturnType(); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/StaticICaller002.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class StaticICaller002 { 4 | public String run() { 5 | SimpleI002 si = (SimpleI002) new SimpleIClass(); 6 | return si.fromInt(); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/StaticICaller003.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class StaticICaller003 { 4 | public String run() { 5 | SimpleI003 si = new SimpleIClass003(); 6 | return si.stringify(2.0d, 12, 32768L, false); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/StaticICaller005.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class StaticICaller005 { 4 | public int run() { 5 | SimpleI005 si = new SimpleIClass005(); 6 | return si.toInt(36); 7 | } 8 | 9 | public Object run2() { 10 | SimpleI005 si = new SimpleIClass005(); 11 | return si.changingReturnType(); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/StaticICallerTwo.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class StaticICallerTwo { 4 | public int run() { 5 | SimpleITwo si = new SimpleIClassTwo(); 6 | return si.toInt("123"); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/tgt/StaticICallerTwo002.java: -------------------------------------------------------------------------------- 1 | package tgt; 2 | 3 | public class StaticICallerTwo002 { 4 | public String run() { 5 | SimpleITwo002 si = (SimpleITwo002) new SimpleIClassTwo(); 6 | return si.fromLong(27); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/typedescriptor/A.java: -------------------------------------------------------------------------------- 1 | package typedescriptor; 2 | 3 | public class A { 4 | public void m() {} 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/typedescriptor/A2.java: -------------------------------------------------------------------------------- 1 | package typedescriptor; 2 | 3 | public class A2 { 4 | // simulated deletion 5 | //public void m() {} 6 | } 7 | -------------------------------------------------------------------------------- /testdata/src/main/java/typedescriptor/B.java: -------------------------------------------------------------------------------- 1 | package typedescriptor; 2 | 3 | public class B extends A { 4 | public void m() {} 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/typedescriptor/B2.java: -------------------------------------------------------------------------------- 1 | package typedescriptor; 2 | 3 | public class B2 extends A { 4 | } 5 | -------------------------------------------------------------------------------- /testdata/src/main/java/typedescriptor/C.java: -------------------------------------------------------------------------------- 1 | package typedescriptor; 2 | 3 | public class C { 4 | 5 | public static void staticMethod() { 6 | } 7 | 8 | public void instanceMethod() { 9 | } 10 | 11 | public void publicMethod1() { 12 | } 13 | 14 | public void publicMethod2() { 15 | } 16 | 17 | public void publicMethod3() { 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeOne.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeOne { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeOne002.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeOne002 { 4 | 5 | public String toString() { 6 | return "abcd"; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeOne003.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeOne003 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeThreeBottom.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeThreeBottom extends CalleeThreeMiddle { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeThreeMiddle.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeThreeMiddle extends CalleeThreeTop { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeThreeTop.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeThreeTop { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeThreeTop002.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeThreeTop002 { 4 | 5 | public String toString() { 6 | // new RuntimeException().printStackTrace(); 7 | return "topToString"; 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeThreeTop003.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeThreeTop003 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeTwoBottom.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeTwoBottom extends CalleeTwoTop { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeTwoTop.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeTwoTop { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeTwoTop002.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeTwoTop002 { 4 | 5 | public String toString() { 6 | // new RuntimeException().printStackTrace(); 7 | return "topToString"; 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CalleeTwoTop003.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CalleeTwoTop003 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CallerOne.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CallerOne { 4 | static CalleeOne cone = new CalleeOne(); 5 | 6 | public String run() { 7 | return cone.toString(); 8 | } 9 | 10 | } 11 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/CallerTwo.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class CallerTwo { 4 | static CalleeTwoTop top = new CalleeTwoTop(); 5 | static CalleeTwoBottom bottom = new CalleeTwoBottom(); 6 | 7 | public String runTopToString() { 8 | return top.toString(); 9 | } 10 | 11 | public String runBottomToString() { 12 | return bottom.toString(); 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourBot.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourBot extends FourTop { 4 | 5 | public int run() { 6 | return 42; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourBot2.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourBot2 extends FourTop2 { 4 | 5 | public int run() { 6 | return bar(); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourBotB.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourBotB extends FourMidB { 4 | 5 | public int run() { 6 | return 42; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourBotB2.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourBotB2 extends FourMidB2 { 4 | 5 | public int run() { 6 | return bar(); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourBotC.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourBotC extends FourMidC { 4 | 5 | public int run() { 6 | return 42; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourBotC2.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourBotC2 extends FourMidC2 { 4 | 5 | public int run() { 6 | return bar(); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourMidB.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourMidB extends FourTopB { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourMidB2.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourMidB2 extends FourTopB2 { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourMidC.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourMidC extends FourTopC { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourMidC2.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourMidC2 extends FourTopC2 { 4 | 5 | public int bar() { 6 | return 99; 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourTop.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourTop { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourTop2.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourTop2 { 4 | 5 | public int bar() { 6 | return 77; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourTopB.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourTopB { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourTopB2.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourTopB2 { 4 | 5 | public int bar() { 6 | return 77; 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourTopC.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourTopC { 4 | 5 | } 6 | -------------------------------------------------------------------------------- /testdata/src/main/java/virtual/FourTopC2.java: -------------------------------------------------------------------------------- 1 | package virtual; 2 | 3 | public class FourTopC2 { 4 | 5 | public int bar() { 6 | return 77; 7 | } 8 | 9 | } 10 | --------------------------------------------------------------------------------