/* * Copyright 2004 Apache Software Foundation * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or * implied. * * See the License for the specific language governing permissions and * limitations under the License. */ namespace Apache.Avalon.Composition.Data { using System; /// Abstract base class for ComponentProfile and ContainmentProfile. /// /// /// Avalon Development Team /// /// $Revision: 1.2 $ $Date: 2004/02/29 18:07:17 $ /// [Serializable] public abstract class DeploymentProfile { //-------------------------------------------------------------------------- // state //-------------------------------------------------------------------------- /// The name of the component profile. This is an /// abstract name used during assembly. /// private System.String m_name; /// The activation policy. private ActivationPolicy m_activation; /// The mode under which this profile was established. private Mode m_mode; //-------------------------------------------------------------------------- // constructor //-------------------------------------------------------------------------- public DeploymentProfile(System.String name, ActivationPolicy activation, Mode mode) { m_activation = activation; m_mode = mode; if ((System.Object) name == null) { m_name = "untitled"; } else { m_name = name; } } //-------------------------------------------------------------------------- // implementation //-------------------------------------------------------------------------- /// Return the name of meta-data instance. /// /// /// the name of the component. /// public virtual System.String Name { get { return m_name; } } /// Get the activation policy for the profile. public virtual ActivationPolicy Activation { get { return m_activation; } } /// Returns the creation mode for this profile. /// a value of EXPLICIT, PACKAGED or IMPLICIT /// public virtual Mode Mode { get { return m_mode; } } /// Returns a string representation of the profile. /// a string representation /// public override System.String ToString() { return "[" + Name + "]"; } } }