Interface ClassNameCRStrategy
-
- All Known Implementing Classes:
BaseClassNameCRStrategy
,InformViaLogClassNameCRStrategy
,WarningViaDialogClassNameCRStrategy
public interface ClassNameCRStrategy
Strategy pattern for dealing with class name conflicts during source code generation. The various implementations of this stragtegy will implement individual approaches for dealing with such a naming collision.- Since:
- 1.1
- Author:
- Werner Guttmann
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description SGStateInfo
dealWithClassNameConflict(SGStateInfo state, ClassInfo newClassInfo, JClass conflict)
Implements a specific strategy for dealing with class name conflicts.boolean
dealWithFileOverwrite(java.lang.String filename)
Implements a specific strategy for dealing with the fact that -- for a given file name -- an artifact with the same name already exists.java.lang.String
getName()
Returns the name of this strategy.void
setConsoleDialog(ConsoleDialog dialog)
Sets theConsoleDialog
instance to use (if required).void
setSingleClassGenerator(SingleClassGenerator generator)
Injects theSingleClassGenerator
instance that actually is calling a method of this strategy.
-
-
-
Method Detail
-
dealWithClassNameConflict
SGStateInfo dealWithClassNameConflict(SGStateInfo state, ClassInfo newClassInfo, JClass conflict)
Implements a specific strategy for dealing with class name conflicts.- Parameters:
state
- The current source generator state.newClassInfo
- TheCLassInfo
for the new class to be generated.conflict
- TheJClass
instance representing the potential conflict.- Returns:
- the source generator state, as modified by the decision.
-
dealWithFileOverwrite
boolean dealWithFileOverwrite(java.lang.String filename)
Implements a specific strategy for dealing with the fact that -- for a given file name -- an artifact with the same name already exists.- Parameters:
filename
- The name of the file to be overwritten.- Returns:
- True of the file should be overwritten.
-
getName
java.lang.String getName()
Returns the name of this strategy.- Returns:
- The name of this strategy.
-
setConsoleDialog
void setConsoleDialog(ConsoleDialog dialog)
Sets theConsoleDialog
instance to use (if required).- Parameters:
dialog
- theConsoleDialog
instance to use (if required).
-
setSingleClassGenerator
void setSingleClassGenerator(SingleClassGenerator generator)
Injects theSingleClassGenerator
instance that actually is calling a method of this strategy.- Parameters:
generator
- The callingSingleClassGenerator
- See Also:
SingleClassGenerator
-
-