All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.hubspot.singularity.executor.config.SingularityExecutorS3UploaderAdditionalFile Maven / Gradle / Ivy

package com.hubspot.singularity.executor.config;

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.common.base.Optional;

public class SingularityExecutorS3UploaderAdditionalFile {
    private final String filename;
    private final Optional s3UploaderBucket;
    private final Optional s3UploaderKeyPattern;
    private final Optional s3UploaderFilenameHint;

    @JsonCreator
    public static SingularityExecutorS3UploaderAdditionalFile fromString(String value) {
        return new SingularityExecutorS3UploaderAdditionalFile(value, Optional.absent(), Optional.absent(), Optional.absent());
    }

    @JsonCreator
    public SingularityExecutorS3UploaderAdditionalFile(@JsonProperty("filename") String filename,
        @JsonProperty("s3UploaderBucket") Optional s3UploaderBucket,
        @JsonProperty("s3UploaderKeyPattern") Optional s3UploaderKeyPattern,
        @JsonProperty("s3UploaderFilenameHint") Optional s3UploaderFilenameHint) {
        this.filename = filename;
        this.s3UploaderBucket = s3UploaderBucket;
        this.s3UploaderKeyPattern = s3UploaderKeyPattern;
        this.s3UploaderFilenameHint = s3UploaderFilenameHint;
    }

    public String getFilename() {
        return filename;
    }

    public Optional getS3UploaderBucket() {
        return s3UploaderBucket;
    }

    public Optional getS3UploaderKeyPattern() {
        return s3UploaderKeyPattern;
    }

    public Optional getS3UploaderFilenameHint() {
        return s3UploaderFilenameHint;
    }

    @Override
    public String toString() {
        return "SingularityExecutorS3UploaderAdditionalFile[" +
            "filename='" + filename + '\'' +
            ", s3UploaderBucket=" + s3UploaderBucket +
            ", s3UploaderKeyPattern=" + s3UploaderKeyPattern +
            ", s3UploaderFilenameHint=" + s3UploaderFilenameHint +
            ']';
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy