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

com.atlassian.bamboo.specs.api.builders.trigger.AnyTriggerCondition Maven / Gradle / Ivy

There is a newer version: 6.7.1
Show newest version
package com.atlassian.bamboo.specs.api.builders.trigger;

import com.atlassian.bamboo.specs.api.builders.AtlassianModule;
import com.atlassian.bamboo.specs.api.model.AtlassianModuleProperties;
import com.atlassian.bamboo.specs.api.model.trigger.AllOtherTriggerConditionProperties;
import com.atlassian.bamboo.specs.api.model.trigger.AnyTriggerConditionProperties;
import com.atlassian.bamboo.specs.api.util.EntityPropertiesBuilders;
import org.jetbrains.annotations.NotNull;

import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.Map;

public class AnyTriggerCondition, P extends AnyTriggerConditionProperties> extends TriggerCondition {
    private final AtlassianModuleProperties atlassianPlugin;
    private Map configuration = new LinkedHashMap<>();

    /**
     * Deprecated default constructor. Use {@link AllOtherTriggerCondition}.
     * @deprecated since 8.0.1. Use {@link AllOtherTriggerCondition}
     */
    @Deprecated
    public AnyTriggerCondition() {
        this(new AtlassianModule(AllOtherTriggerConditionProperties.ALL_OTHER_TRIGGER_CONDITION_PLUGINS_MODULE_KEY));
    }

    public AnyTriggerCondition(@NotNull AtlassianModule atlassianPlugin) {
        this.atlassianPlugin = EntityPropertiesBuilders.build(atlassianPlugin);
    }

    /**
     * Configuration map.
     * @deprecated since 8.0.1. Use {{@link #configuration(Map)}}
     */
    @Deprecated
    public AnyTriggerCondition config(@NotNull Map configuration) {
        return configuration(configuration);
    }

    public AnyTriggerCondition configuration(@NotNull Map configuration) {
        this.configuration = Collections.unmodifiableMap(configuration);
        return this;
    }

    @Override
    protected P build() {
        return (P) new AnyTriggerConditionProperties(atlassianPlugin, configuration);
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy