edu.wisc.cs.stego
Class CodeEditor
java.lang.Object
|
+--edu.wisc.cs.stego.CodeEditor
- Direct Known Subclasses:
- Unprofile
- public abstract class CodeEditor
- extends java.lang.Object
The CodeEditor class should be extended by a class intended for use with a
software watermarking package to modify class files to embed a watermark.
Constructor Summary |
protected |
CodeEditor()
This class is not instantiable but this must be accessable to subclasses. |
Method Summary |
static CodeEditor |
buildCodeEditor(java.lang.String[] params)
This method is a factory for producing CodeEditor objects for use in a
watermark embedding program. |
abstract void |
instrumentClasses(WatermarkGraph graph,
ProfilePoint[] profile,
java.util.Map classes,
java.lang.String nodec)
Modifies the classes to remove the profile points and replace them with
code to build the watermark graph. |
Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
CodeEditor
protected CodeEditor()
- This class is not instantiable but this must be accessable to subclasses.
buildCodeEditor
public static CodeEditor buildCodeEditor(java.lang.String[] params)
- This method is a factory for producing CodeEditor objects for use in a
watermark embedding program. This method must be overridden by classes
which inherit from this one. Even though it is not required by the sematics
of the Java language, it is required by our specification for valid Encoder
classes.
- Parameters:
params
- parameters for the initialization of the new CodeEditor
object.- Returns:
- a newly constructed and initialized CodeEditor object.
- Throws:
- NoSuchMethodError - if this is not overridden by the subclass.
instrumentClasses
public abstract void instrumentClasses(WatermarkGraph graph,
ProfilePoint[] profile,
java.util.Map classes,
java.lang.String nodec)
- Modifies the classes to remove the profile points and replace them with
code to build the watermark graph.
- Parameters:
graph
- the graph to be encoded.profile
- the array of profile points.classes
- a map containing the classes, keyed by their name.nodec
- the name of the class to be used for the graph node.