diff options
author | Manuel Bentele | 2021-04-15 14:01:47 +0200 |
---|---|---|
committer | Manuel Bentele | 2021-04-15 14:01:47 +0200 |
commit | 90d94a479e5af0d884c63643f1266dc0a6596318 (patch) | |
tree | a84ee0f2c9bf1bce9abc43cfacdb87cd52592fcf /src/main/java/org/openslx/virtualization/configuration/transformation/Transformation.java | |
parent | Add representation of used virtualization systems (diff) | |
download | master-sync-shared-90d94a479e5af0d884c63643f1266dc0a6596318.tar.gz master-sync-shared-90d94a479e5af0d884c63643f1266dc0a6596318.tar.xz master-sync-shared-90d94a479e5af0d884c63643f1266dc0a6596318.zip |
Add generic transformation library to transform configs
Diffstat (limited to 'src/main/java/org/openslx/virtualization/configuration/transformation/Transformation.java')
-rw-r--r-- | src/main/java/org/openslx/virtualization/configuration/transformation/Transformation.java | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/src/main/java/org/openslx/virtualization/configuration/transformation/Transformation.java b/src/main/java/org/openslx/virtualization/configuration/transformation/Transformation.java new file mode 100644 index 0000000..af0e181 --- /dev/null +++ b/src/main/java/org/openslx/virtualization/configuration/transformation/Transformation.java @@ -0,0 +1,65 @@ +package org.openslx.virtualization.configuration.transformation; + +/** + * Represents a transformation that transforms (alters) a given configuration with specified input + * arguments. + * + * @author Manuel Bentele + * @version 1.0 + * + * @param <T> type of the configuration which will be transformed. + * @param <R> type of input arguments for the transformation. + */ +public abstract class Transformation<T, R> implements TransformationFunction<T, R> +{ + /** + * Name of the transformation. + */ + private final String name; + + /** + * State of the transformation. + */ + private boolean enabled; + + /** + * Creates a transformation. + * + * @param name comprehensible name for the transformation. + */ + public Transformation( String name ) + { + this.name = name; + this.setEnabled( true ); + } + + /** + * Returns the name of the transformation. + * + * @return name of the transformation. + */ + public String getName() + { + return this.name; + } + + /** + * Returns the state of the transformation. + * + * @return state of the transformation. + */ + public boolean isEnabled() + { + return this.enabled; + } + + /** + * Sets the state for the transformation. + * + * @param enabled state for the transformation. + */ + public void setEnabled( boolean enabled ) + { + this.enabled = enabled; + } +} |