001package org.andromda.core.configuration;
002
003/**
004 * Contains namespace properties used witin the AndroMDA core.
005 *
006 * @author Chad Brandon
007 */
008public interface NamespaceProperties
009{
010    /**
011     * The location of an <strong>optional </strong> merge mappings file (merge mappings are mappings that allow the
012     * replacement of patterns in generated files during model processing time).
013     */
014    public static final String MERGE_MAPPINGS_URI = "mergeMappingsUri";
015
016    /**
017     * Defines the location of merge templates. Merge templates are templates that can either be <em>merged</em> into
018     * existing cartridge output, or replace cartridge templates all together.  This must be the directory where the
019     * merge files can be found.
020     */
021    public static final String MERGE_LOCATION = "mergeLocation";
022
023    /**
024     * The URI to the mappings file containing the AndroMDA profile. This property provides the ability to override the
025     * default profile values (i.e. stereotype names, etc).
026     */
027    public static final String PROFILE_MAPPINGS_URI = "profileMappingsUri";
028
029    /**
030     * If true, all resources are overwritten (even if overwrite is set to <code>false</code>
031     * within an andromda-cartridge.xml). If false, no resources are overwritten.
032     * It is useful to set to <code>true</code> when during pure modeling until you're ready
033     * to implement.
034     */
035    public static final String OVERWRITE = "overwrite";
036}