blob: 33a6068d7955259aeffd3b3df3085e3be41f1e12 [file] [log] [blame]
// Constants.java
package org.eclipse.stem.core;
/*******************************************************************************
* Copyright (c) 2006, 2008 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
import org.eclipse.stem.core.common.DublinCore;
import org.eclipse.stem.core.common.Identifiable;
import org.eclipse.stem.core.experiment.Experiment;
import org.eclipse.stem.core.graph.Graph;
import org.eclipse.stem.core.model.Decorator;
import org.eclipse.stem.core.model.Model;
import org.eclipse.stem.core.scenario.Scenario;
import org.eclipse.stem.core.sequencer.Sequencer;
import org.eclipse.stem.core.trigger.Trigger;
/**
* This interface contains a number of significant constants used by the STEM
* implementation.
*/
public interface Constants {
/**
* This is the string that is the root of all packages and plugin id's
*/
String ID_ROOT = "org.eclipse.stem";
/**
* This is the id for the STEM project nature.
*/
String ID_STEM_PROJECT_NATURE = ID_ROOT + ".stemnature";
/**
* This is the scheme used for STEM URI's that uniquely identify a
* component.
*/
String STEM_SCHEME = "stem";
/**
* This is the scheme used for STEM URI's that uniquely identify a STEM
* "type".
*/
String STEM_TYPE_SCHEME = "stemtype";
/**
* This is the "authority" of a URI that refers to STEM resources.
*/
String STEM_URI_AUTHORITY = ID_ROOT;
/**
* This is the extension point id for the "graph" extension point. {@value}
*
* @see Graph
*/
String ID_GRAPH_EXTENSION_POINT = ID_ROOT + ".core.graph";
/**
* This is the extension point id for the "model" extension point. {@value}
*
* @see Model
*/
String ID_MODEL_EXTENSION_POINT = ID_ROOT + ".core.model";
/**
* This is the extension point id for the "scenario" extension point. * *
* {@value}
*
* @see Scenario
*/
String ID_SCENARIO_EXTENSION_POINT = ID_ROOT + ".core.scenario";
/**
* This is the extension point id for the "experiment" extension point. * *
* {@value}
*
* @see Experiment
*/
String ID_EXPERIMENT_EXTENSION_POINT = ID_ROOT + ".core.experiment";
/**
* This is the extension point id of the "Sequencers" extension point. * *
* {@value}
*
* @see Sequencer
*/
String ID_SEQUENCER_EXTENSION_POINT = ID_ROOT + ".core.sequencer";
/**
* This is the extension point id of the "Decorators" extension point * *
* {@value}
*
* @see Decorator
*/
String ID_DECORATOR_EXTENSION_POINT = ID_ROOT + ".core.decorator";
/**
* This is the extension point id of the "Triggers" extension point * *
* {@value}
*
* @see Trigger
*/
String ID_TRIGGER_EXTENSION_POINT = ID_ROOT + ".core.trigger";
/**
* This is the extension point id of the "Predicate" extension point * *
* {@value}
*
* @see Predicate
*/
String ID_PREDICATE_EXTENSION_POINT = ID_ROOT + ".core.predicate";
/**
* This is the extension point id for the "solver" extension point. A
* {@link Solver} defines the underlying computational model.
* {@value}
*/
String ID_SOLVER_EXTENSION_POINT = org.eclipse.stem.core.Constants.ID_ROOT
+ ".core.solver";
/**
* This is the identifier of the element in a
* <code>ConfigurationElement</code> that specifies the name and
* implementing class for STEM "solver".
*
* @see org.eclipse.stem.core.Constants#EXECUTABLE_NAME_ATTRIBUTE
*/
String SOLVER_ELEMENT = "classdef";
/**
* This is the identifier of the XML element that specifies the name of a
* "category" for extension points that are extended by extensions that plug
* in {@link Identifiable}s. {@value}
*
* @see #CATEGORY_NAME_ATTRIBUTE
* @see #PARENT_ID_ATTRIBUTE
*/
String CATEGORY_ELEMENT = "stem_category";
/**
* This is the identifier of the XML attribute in a CATEGORY element that
* specifies the name of the category. {@value}
*
* @see #CATEGORY_ELEMENT
* @see #PARENT_ID_ATTRIBUTE
*/
String CATEGORY_NAME_ATTRIBUTE = "name";
/**
* This is the identifier of the XML attribute in a Category element that
* specifies the unique identifier of the category. {@value}
*
* @see #CATEGORY_NAME_ATTRIBUTE
* @see #PARENT_ID_ATTRIBUTE
*/
String CATEGORY_ID_ATTRIBUTE = "id";
/**
* This is the identifier of the XML attribute in a CATEGORY element that
* specifies the unique identifier of the parent category of a child
* category. {@value}
*
* @see #CATEGORY_ELEMENT
* @see #CATEGORY_NAME_ATTRIBUTE
*/
String PARENT_ID_ATTRIBUTE = "parent_id";
/**
* This is the identifier of the XML element that specifies the Dublin Core
* values for extension points that are extended by extensions that plug in
* {@link Identifiable}s. {@value}
*
* @see #CATEGORY_ELEMENT
* @see DublinCore
*/
String DUBLIN_CORE_ELEMENT = "dublin_core";
/**
* This is the identifier of the XML element that specifies the name and
* implementing class for STEM "sequencers".
*
* @see #EXECUTABLE_NAME_ATTRIBUTE
*/
String SEQUENCER_ELEMENT = "sequencer";
/**
* This is the identifier of the XML element that specifies the name and
* implementing class for STEM "decorators"
*
* @see #EXECUTABLE_NAME_ATTRIBUTE
*/
String DECORATOR_ELEMENT = "decorator";
/**
* This is the identifier of the XML attribute in an Observer element that
* specifies the name of a STEM "executable".
*
* @see #SEQUENCER_ELEMENT
* @see #DECORATOR_ELEMENT
*/
String EXECUTABLE_NAME_ATTRIBUTE = "name";
/**
* The name of the root category for all IdentifiablePluginViews.
*
* @see #IDENTIFIABLE_ROOT_CATEGORY_ID
*/
String IDENTIFIABLE_ROOT_CATEGORY_NAME = "/";
/**
* This is the unique identifier of the root category. {@value}
*
* @see #IDENTIFIABLE_ROOT_CATEGORY_NAME
*/
String IDENTIFIABLE_ROOT_CATEGORY_ID = IDENTIFIABLE_ROOT_CATEGORY_NAME;
} // Constants