diff options
Diffstat (limited to 'src/main/java/org/openslx/virtualization/configuration/container/ContainerBindMount.java')
-rw-r--r-- | src/main/java/org/openslx/virtualization/configuration/container/ContainerBindMount.java | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/src/main/java/org/openslx/virtualization/configuration/container/ContainerBindMount.java b/src/main/java/org/openslx/virtualization/configuration/container/ContainerBindMount.java new file mode 100644 index 0000000..0c1788e --- /dev/null +++ b/src/main/java/org/openslx/virtualization/configuration/container/ContainerBindMount.java @@ -0,0 +1,74 @@ +package org.openslx.virtualization.configuration.container; + +import java.util.Objects; + +/** + * This class implements a model for a bind mount entry in the docker context + * (eg. docker run ... --mount type=bind,source=source,target=target,options ... ). A list of objects of this class is stored in + * {@link ContainerMeta}. + */ +public class ContainerBindMount { + + public enum ContainerMountType { + DEFAULT, + CONTAINER_IMAGE + } + + private ContainerMountType mount_type = ContainerMountType.DEFAULT; + private String source = ""; + private String target = ""; + private String options = ""; + + public ContainerBindMount() { + } + + public ContainerBindMount(String source, String target, String options) { + this(ContainerMountType.DEFAULT,source,target,options); + } + + public ContainerBindMount(ContainerMountType mount_type, String source, String target, String options) { + this.mount_type = mount_type; + this.source = source; + this.target = target; + this.options = options; + } + + public String getSource() { + return source; + } + + public String getTarget() { + return target; + } + + public void setTarget(String target) { + this.target = target; + } + + public String getOptions() { + return options; + } + + public void setOptions(String options) { + this.options = options; + } + + public ContainerMountType getMountType() { + return this.mount_type; + } + + + @Override public boolean equals(Object o) { + if (this == o) + return true; + if (o == null || getClass() != o.getClass()) + return false; + ContainerBindMount that = (ContainerBindMount) o; + return Objects.equals(source, that.source) && Objects.equals(mount_type, that.mount_type) + && Objects.equals(target, that.target) && Objects.equals(options, that.options); + } + + @Override public int hashCode() { + return Objects.hash(source, target, options); + } +} |