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

com.optum.sourcehawk.enforcer.file.FileEnforcerRegistry Maven / Gradle / Ivy

There is a newer version: 0.7.2-1
Show newest version
// Auto-Generated by sourcehawk-enforcer-file-aot
package com.optum.sourcehawk.enforcer.file;

import com.optum.sourcehawk.enforcer.file.common.Contains;
import com.optum.sourcehawk.enforcer.file.common.ContainsLine;
import com.optum.sourcehawk.enforcer.file.common.ContainsLineAt;
import com.optum.sourcehawk.enforcer.file.common.ContainsLineMatching;
import com.optum.sourcehawk.enforcer.file.common.ContainsLineMatchingAt;
import com.optum.sourcehawk.enforcer.file.common.ContentEquals;
import com.optum.sourcehawk.enforcer.file.common.Sha256ChecksumEquals;
import com.optum.sourcehawk.enforcer.file.common.StringPropertyEquals;
import com.optum.sourcehawk.enforcer.file.docker.DockerfileFromHasTag;
import com.optum.sourcehawk.enforcer.file.docker.DockerfileFromImageEquals;
import com.optum.sourcehawk.enforcer.file.docker.DockerfileFromRegistryEquals;
import com.optum.sourcehawk.enforcer.file.json.JsonPathEquals;
import com.optum.sourcehawk.enforcer.file.maven.MavenBannedProperties;
import com.optum.sourcehawk.enforcer.file.maven.MavenDependencies;
import com.optum.sourcehawk.enforcer.file.maven.MavenParentEquals;
import com.optum.sourcehawk.enforcer.file.maven.MavenPlugins;
import com.optum.sourcehawk.enforcer.file.xml.XPathEquals;
import com.optum.sourcehawk.enforcer.file.yaml.YamlPathEquals;
import java.lang.Class;
import java.lang.String;
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;

/**
 * A registry for all file enforcers
 *
 * @author Brian Wyka
 */
public final class FileEnforcerRegistry {
  /**
   * Mapping of enforcer classes keyed by alias
   */
  private static final Map> FILE_ENFORCERS;

  static {
    FILE_ENFORCERS = new HashMap<>();
    FILE_ENFORCERS.put("DOCKERFILE-FROM-IMAGE-EQUALS", DockerfileFromImageEquals.class);
    FILE_ENFORCERS.put("CONTAINS-LINE-MATCHING-AT", ContainsLineMatchingAt.class);
    FILE_ENFORCERS.put("CONTAINS-LINE", ContainsLine.class);
    FILE_ENFORCERS.put("MAVEN-DEPENDENCIES", MavenDependencies.class);
    FILE_ENFORCERS.put("CONTAINS", Contains.class);
    FILE_ENFORCERS.put("MAVEN-PARENT-EQUALS", MavenParentEquals.class);
    FILE_ENFORCERS.put("X-PATH-EQUALS", XPathEquals.class);
    FILE_ENFORCERS.put("STRING-PROPERTY-EQUALS", StringPropertyEquals.class);
    FILE_ENFORCERS.put("DOCKERFILE-FROM-REGISTRY-EQUALS", DockerfileFromRegistryEquals.class);
    FILE_ENFORCERS.put("CONTENT-EQUALS", ContentEquals.class);
    FILE_ENFORCERS.put("DOCKERFILE-FROM-HAS-TAG", DockerfileFromHasTag.class);
    FILE_ENFORCERS.put("CONTAINS-LINE-MATCHING", ContainsLineMatching.class);
    FILE_ENFORCERS.put("MAVEN-PLUGINS", MavenPlugins.class);
    FILE_ENFORCERS.put("CONTAINS-LINE-AT", ContainsLineAt.class);
    FILE_ENFORCERS.put("SHA256-CHECKSUM-EQUALS", Sha256ChecksumEquals.class);
    FILE_ENFORCERS.put("JSON-PATH-EQUALS", JsonPathEquals.class);
    FILE_ENFORCERS.put("YAML-PATH-EQUALS", YamlPathEquals.class);
    FILE_ENFORCERS.put("MAVEN-BANNED-PROPERTIES", MavenBannedProperties.class);
  }

  /**
   * Get the file enforcer for the provided alias
   *
   * @param alias the file enforcer alias@return the file enforcer class
   */
  public static final Optional> getEnforcerByAlias(
      final String alias) {
    return Optional.ofNullable(FILE_ENFORCERS.get(alias));
  }

  /**
   * Get the file enforcers
   *
   * @return the file enforcers
   */
  public static final Map> getEnforcers() {
    return FILE_ENFORCERS;
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy