package org.jboss.windup.rules.apps.xml.model; import org.jboss.windup.graph.model.WindupVertexFrame; import org.jboss.windup.graph.model.resource.FileModel; import org.jboss.windup.rules.apps.xml.operation.xslt.XSLTTransformation; import com.tinkerpop.blueprints.Direction; import com.tinkerpop.frames.Adjacency; import com.tinkerpop.frames.Property; import com.tinkerpop.frames.modules.typedgraph.TypeValue; /** * Contains metadata regarding the result of an XSLT Transformation */ @TypeValue(XsltTransformationModel.TYPE) public interface XsltTransformationModel extends WindupVertexFrame { public static final String TYPE = "XsltTransformation"; public static final String LOCATION = TYPE + "location"; public static final String EXTENSION = TYPE + "extension"; public static final String EFFORT = TYPE + "effort"; public static final String DESCRIPTION = TYPE + "description"; public static final String FILE_SOURCE = TYPE + "file_source"; public static final String FILE_RESULT = TYPE + "file_result"; /** * Contains the location of the XSLT file */ @Property(LOCATION) public String getSourceLocation(); /** * Contains the location of the XSLT file */ @Property(LOCATION) public void setSourceLocation(String location); /** * Contains the suffix of the result file that is going to be added. */ @Property(EXTENSION) public String getExtension(); /** * Contains the suffix of the result file */ @Property(EXTENSION) public void setExtension(String extension); /** * Contains descriptive text describing the result */ @Property(DESCRIPTION) public String getDescription(); /** * Contains descriptive text describing the result */ @Property(DESCRIPTION) public void setDescription(String description); /** * Gets the relative level of effort to complete this {@link XSLTTransformation} */ @Property(EFFORT) public int getEffort(); /** * Sets the relative level of effort to complete this {@link XSLTTransformation} */ @Property(EFFORT) public void setEffort(int effort); /** * Links to the original {@link FileModel} with the original XML contents. */ @Adjacency(label = FILE_SOURCE, direction = Direction.OUT) FileModel getSourceFile(); /** * Links to the original {@link FileModel} with the original XML contents. */ @Adjacency(label = FILE_SOURCE, direction = Direction.OUT) void setSourceFile(FileModel file); /** * Contains the result filename */ @Property(FILE_RESULT) String getResult(); /** * Contains the result filename */ @Property(FILE_RESULT) void setResult(String path); }