Class AtlasMutatorParameters


  • public final class AtlasMutatorParameters
    extends java.lang.Object
    This class helps configure an AtlasMutator by defining and parsing its Command.Switches.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Boolean> ADD_MUTATION_TAGS  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Boolean> ALLOW_RDD  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.String> BOUNDARIES_PROVIDED  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Integer> COUNTRY_CONCURRENCY  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Boolean> DEBUG_APPLIED_RDD_PERSIST_USE_SER  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<AtlasMutatorParameters.DebugFeatureChangeOutput> DEBUG_FEATURE_CHANGE_OUTPUT  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<org.openstreetmap.atlas.utilities.collections.StringList> DEBUG_MUTATIONS  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<org.openstreetmap.atlas.utilities.collections.StringList> DEBUG_SHARDS  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Integer> DEBUG_SKIP_TO_LEVEL  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Integer> DEBUG_STOP_AT_LEVEL  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Boolean> GROUP_COUNTRIES  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.String> INPUT_ATLAS  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.String> MUTATOR_CONFIGURATION_JSON  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<org.openstreetmap.atlas.utilities.collections.StringList> MUTATOR_CONFIGURATION_RESOURCE  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Boolean> PRELOAD_RDD  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.String> SHARDING_PROVIDED  
      static org.openstreetmap.atlas.utilities.runtime.Command.Switch<org.openstreetmap.atlas.utilities.scalars.Duration> SUBMISSION_STAGGERING_WAIT  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      protected static AtlasMutatorConfiguration atlasMutatorConfiguration​(org.openstreetmap.atlas.utilities.runtime.CommandMap command, java.util.Map<java.lang.String,​java.lang.String> sparkConfiguration)  
      static org.openstreetmap.atlas.geography.boundary.CountryBoundaryMap boundaries​(org.openstreetmap.atlas.utilities.runtime.CommandMap command, java.util.Map<java.lang.String,​java.lang.String> configuration)  
      static java.util.Set<java.lang.String> countries​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      static java.lang.Integer countryConcurrency​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      static AtlasMutatorParameters.DebugFeatureChangeOutput debugFeatureChangeOutput​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      protected static org.openstreetmap.atlas.utilities.collections.StringList debugMutations​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      protected static org.openstreetmap.atlas.utilities.collections.StringList debugShards​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      protected static boolean isAddMutationTags​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      protected static boolean isAllowRDD​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      protected static boolean isAppliedRDDPersistUseSer​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      protected static boolean isGroupCountries​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      protected static boolean isPreloadRDD​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      static java.util.Optional<org.openstreetmap.atlas.utilities.configuration.Configuration> mutatorsConfiguration​(org.openstreetmap.atlas.utilities.collections.StringList resources, java.lang.String json, java.nio.file.FileSystem sourceFileSystem)
      Load the Configuration for this job explicitly, by providing a list of resources and optional JSON overrides.
      static java.util.Optional<org.openstreetmap.atlas.utilities.configuration.Configuration> mutatorsConfiguration​(org.openstreetmap.atlas.utilities.collections.StringList resources, java.lang.String json, java.util.Map<java.lang.String,​java.lang.String> sparkConfiguration)
      Load the Configuration for this job explicitly, by providing a list of resources and optional JSON overrides.
      static org.openstreetmap.atlas.utilities.configuration.Configuration mutatorsConfiguration​(org.openstreetmap.atlas.utilities.runtime.CommandMap command, java.util.Map<java.lang.String,​java.lang.String> sparkConfiguration)
      Load the Configuration for this job using the job parameters and supplied spark configuration.
      static java.util.Comparator<org.openstreetmap.atlas.geography.sharding.CountryShard> shardComparator()  
      static org.openstreetmap.atlas.geography.sharding.Sharding sharding​(org.openstreetmap.atlas.utilities.runtime.CommandMap command, java.util.Map<java.lang.String,​java.lang.String> configuration)  
      static org.apache.spark.Partitioner shardPartitioner​(java.util.Set<org.openstreetmap.atlas.geography.sharding.CountryShard> countryShards)
      Partitioner to be used in a repartition() call.
      protected static int startLevel​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      protected static int stopLevel​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      static org.openstreetmap.atlas.utilities.scalars.Duration submissionStaggering​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)  
      protected static org.openstreetmap.atlas.utilities.runtime.Command.SwitchList switches()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • MUTATOR_CONFIGURATION_RESOURCE

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<org.openstreetmap.atlas.utilities.collections.StringList> MUTATOR_CONFIGURATION_RESOURCE
      • MUTATOR_CONFIGURATION_JSON

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.String> MUTATOR_CONFIGURATION_JSON
      • INPUT_ATLAS

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.String> INPUT_ATLAS
      • SHARDING_PROVIDED

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.String> SHARDING_PROVIDED
      • BOUNDARIES_PROVIDED

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.String> BOUNDARIES_PROVIDED
      • COUNTRY_CONCURRENCY

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Integer> COUNTRY_CONCURRENCY
      • ADD_MUTATION_TAGS

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Boolean> ADD_MUTATION_TAGS
      • ALLOW_RDD

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Boolean> ALLOW_RDD
      • SUBMISSION_STAGGERING_WAIT

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<org.openstreetmap.atlas.utilities.scalars.Duration> SUBMISSION_STAGGERING_WAIT
      • GROUP_COUNTRIES

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Boolean> GROUP_COUNTRIES
      • PRELOAD_RDD

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Boolean> PRELOAD_RDD
      • DEBUG_SKIP_TO_LEVEL

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Integer> DEBUG_SKIP_TO_LEVEL
      • DEBUG_STOP_AT_LEVEL

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Integer> DEBUG_STOP_AT_LEVEL
      • DEBUG_APPLIED_RDD_PERSIST_USE_SER

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<java.lang.Boolean> DEBUG_APPLIED_RDD_PERSIST_USE_SER
      • DEBUG_SHARDS

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<org.openstreetmap.atlas.utilities.collections.StringList> DEBUG_SHARDS
      • DEBUG_MUTATIONS

        public static final org.openstreetmap.atlas.utilities.runtime.Command.Switch<org.openstreetmap.atlas.utilities.collections.StringList> DEBUG_MUTATIONS
    • Method Detail

      • boundaries

        public static org.openstreetmap.atlas.geography.boundary.CountryBoundaryMap boundaries​(org.openstreetmap.atlas.utilities.runtime.CommandMap command,
                                                                                               java.util.Map<java.lang.String,​java.lang.String> configuration)
      • countries

        public static java.util.Set<java.lang.String> countries​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • countryConcurrency

        public static java.lang.Integer countryConcurrency​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • mutatorsConfiguration

        public static org.openstreetmap.atlas.utilities.configuration.Configuration mutatorsConfiguration​(org.openstreetmap.atlas.utilities.runtime.CommandMap command,
                                                                                                          java.util.Map<java.lang.String,​java.lang.String> sparkConfiguration)
        Load the Configuration for this job using the job parameters and supplied spark configuration.
        Parameters:
        command - the job parameters CommandMap
        sparkConfiguration - the spark configuration
        Returns:
        the job Configuration object
      • mutatorsConfiguration

        public static java.util.Optional<org.openstreetmap.atlas.utilities.configuration.Configuration> mutatorsConfiguration​(org.openstreetmap.atlas.utilities.collections.StringList resources,
                                                                                                                              java.lang.String json,
                                                                                                                              java.nio.file.FileSystem sourceFileSystem)
        Load the Configuration for this job explicitly, by providing a list of resources and optional JSON overrides. Also, use the supplied FileSystem to load any local path resources.
        Parameters:
        resources - a StringList of resources containing configurations
        json - a JSON string of configuration overrides
        sourceFileSystem - the FileSystem from which to load local configuration paths
        Returns:
        the job Configuration object
      • mutatorsConfiguration

        public static java.util.Optional<org.openstreetmap.atlas.utilities.configuration.Configuration> mutatorsConfiguration​(org.openstreetmap.atlas.utilities.collections.StringList resources,
                                                                                                                              java.lang.String json,
                                                                                                                              java.util.Map<java.lang.String,​java.lang.String> sparkConfiguration)
        Load the Configuration for this job explicitly, by providing a list of resources and optional JSON overrides. Also, use the supplied Spark configuration Map to load any local path resources with SparkJob.resource(String, Map).
        Parameters:
        resources - a StringList of resources containing configurations
        json - a JSON string of configuration overrides
        sparkConfiguration - the spark configuration for this job
        Returns:
        the job Configuration object
      • shardComparator

        public static java.util.Comparator<org.openstreetmap.atlas.geography.sharding.CountryShard> shardComparator()
      • shardPartitioner

        public static org.apache.spark.Partitioner shardPartitioner​(java.util.Set<org.openstreetmap.atlas.geography.sharding.CountryShard> countryShards)
        Partitioner to be used in a repartition() call.
        Parameters:
        countryShards - The shards to use to do the partitioning
        Returns:
        A Partitioner that can take an RDD with shard keys and make sure each shard goes to a different partition.
      • sharding

        public static org.openstreetmap.atlas.geography.sharding.Sharding sharding​(org.openstreetmap.atlas.utilities.runtime.CommandMap command,
                                                                                   java.util.Map<java.lang.String,​java.lang.String> configuration)
      • submissionStaggering

        public static org.openstreetmap.atlas.utilities.scalars.Duration submissionStaggering​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • atlasMutatorConfiguration

        protected static AtlasMutatorConfiguration atlasMutatorConfiguration​(org.openstreetmap.atlas.utilities.runtime.CommandMap command,
                                                                             java.util.Map<java.lang.String,​java.lang.String> sparkConfiguration)
      • debugMutations

        protected static org.openstreetmap.atlas.utilities.collections.StringList debugMutations​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • debugShards

        protected static org.openstreetmap.atlas.utilities.collections.StringList debugShards​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • isAddMutationTags

        protected static boolean isAddMutationTags​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • isAllowRDD

        protected static boolean isAllowRDD​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • isAppliedRDDPersistUseSer

        protected static boolean isAppliedRDDPersistUseSer​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • isGroupCountries

        protected static boolean isGroupCountries​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • isPreloadRDD

        protected static boolean isPreloadRDD​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • startLevel

        protected static int startLevel​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • stopLevel

        protected static int stopLevel​(org.openstreetmap.atlas.utilities.runtime.CommandMap command)
      • switches

        protected static org.openstreetmap.atlas.utilities.runtime.Command.SwitchList switches()