package io.cattle.platform.configitem.server.model.impl; import io.cattle.platform.configitem.model.DefaultItemVersion; import io.cattle.platform.configitem.model.ItemVersion; import io.cattle.platform.configitem.server.model.ConfigItem; import io.cattle.platform.configitem.server.model.Request; import io.cattle.platform.configitem.version.ConfigItemStatusManager; public abstract class AbstractConfigItem implements ConfigItem { String name; boolean dynamicallyApplied; ConfigItemStatusManager versionManager; public AbstractConfigItem(String name, ConfigItemStatusManager versionManager) { super(); this.name = name; this.versionManager = versionManager; } protected String getVersion(Request req) { ItemVersion version = versionManager.getRequestedVersion(req.getClient(), req.getItemName()); if (version == null) { return null; } version = new DefaultItemVersion(version.getRevision(), getSourceRevision()); return version.toExternalForm(); } @Override public String getName() { return name; } public void setName(String name) { this.name = name; } public ConfigItemStatusManager getVersionManager() { return versionManager; } public void setVersionManager(ConfigItemStatusManager versionManager) { this.versionManager = versionManager; } @Override public boolean isDynamicallyApplied() { return dynamicallyApplied; } public void setDynamicallyApplied(boolean dynamicallyApplied) { this.dynamicallyApplied = dynamicallyApplied; } }