Commit [734d9b]  Maximize  Restore  History

Refactored IGeneratorPluginFactory from GeneratorImpl

Separated functionality to find GeneratorPlugin instances from GeneratorImpl.
As before, GeneratorImpl uses GeneratorPlugin instances, but now
GeneratorImpl relies on an InstallableGeneratorPluginFactory class to
find GeneratorPlugin instances. The class is a singleton that implements
a new IGeneratorPluginFactory interface. The class delegates all of its
functionality to a private instance member that is itself an implementation
of IGeneratorPluginFactory. The data member is set to a default type unless
a different type is installed into the InstallableGeneratorPluginFactory
singleton. Other types may be installed either by calling an explicit
'install' method or by specifying a System property before the
InstallableGeneratorPluginFactory class is loaded.

Project com.choicemaker.cm.compiler
Path src
Package com/choicemaker/cm/compiler/gen
GeneratorImpl
-- Rewrote the private 'process' method to use
InstallableGeneratorPluginFactory

Project com.choicemaker.cm.core
pom.xml
-- Added testDirectory 'test/java'
-- Added testResources 'test/resources'
-- Added resources 'main/resources'
-- Added test-scoped dependency on JUnit 3.8.2
.classpath
-- Added testDirectory 'test/java'
-- Added testResources 'test/resources'
-- Added resources 'main/resources'

Path .settings
org.eclipse.core.resources.prefs
-- Added encodings for test/java, test/resources and main/resources

Path src
Package com/choicemaker/cm/core/gen
IGeneratorPluginFactory
Eclipse2GeneratorPluginFactory
ListBackedGeneratorPluginFactory
InstallableGeneratorPluginFactory
-- Initial implementations

Path main/resources
Package com/choicemaker/cm/core/gen
defaultGeneratorPlugins.txt
-- Initial implementation

Path test/resources
Package com/choicemaker/cm/core/gen
testGeneratorPlugins.txt
-- Initial implementation

rphall rphall 2014-06-16

changed 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.compiler/src/com/choicemaker/cm/compiler/gen/GeneratorImpl.java
changed 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/.classpath
changed 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/.settings/org.eclipse.core.resources.prefs
added 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/main/resources/com/choicemaker/cm/core/gen/defaultGeneratorPlugins.txt
changed 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/pom.xml
added 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/src/com/choicemaker/cm/core/gen/Eclipse2GeneratorPluginFactory.java
added 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/src/com/choicemaker/cm/core/gen/IGeneratorPluginFactory.java
added 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/src/com/choicemaker/cm/core/gen/InstallableGeneratorPluginFactory.java
added 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/src/com/choicemaker/cm/core/gen/ListBackedGeneratorPluginFactory.java
added 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/test/java/com/choicemaker/cm/core/gen/FakeGeneratorPlugin.java
added 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/test/java/com/choicemaker/cm/core/gen/InstallableGeneratorPluginFactoryTest.java
added 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/test/java/com/choicemaker/cm/core/gen/ListBackedGeneratorPluginFactoryTest.java
added 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/test/java/com/choicemaker/cm/core/gen/Test2ListBackedGeneratorPluginFactory.java
added 2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/test/resources/com/choicemaker/cm/core/gen/testGeneratorPlugins.txt
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.compiler/src/com/choicemaker/cm/compiler/gen/GeneratorImpl.java Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/.classpath Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/.settings/org.eclipse.core.resources.prefs Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/main/resources/com/choicemaker/cm/core/gen/defaultGeneratorPlugins.txt Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/pom.xml Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/src/com/choicemaker/cm/core/gen/Eclipse2GeneratorPluginFactory.java Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/src/com/choicemaker/cm/core/gen/IGeneratorPluginFactory.java Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/src/com/choicemaker/cm/core/gen/InstallableGeneratorPluginFactory.java Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/src/com/choicemaker/cm/core/gen/ListBackedGeneratorPluginFactory.java Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/test/java/com/choicemaker/cm/core/gen/FakeGeneratorPlugin.java Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/test/java/com/choicemaker/cm/core/gen/InstallableGeneratorPluginFactoryTest.java Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/test/java/com/choicemaker/cm/core/gen/ListBackedGeneratorPluginFactoryTest.java Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/test/java/com/choicemaker/cm/core/gen/Test2ListBackedGeneratorPluginFactory.java Diff Switch to side-by-side view
Loading...
2.7.x/choicemaker-cm/choicemaker-common/com.choicemaker.cm.core/test/resources/com/choicemaker/cm/core/gen/testGeneratorPlugins.txt Diff Switch to side-by-side view
Loading...

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks