001 /**
002 * <copyright>
003 * </copyright>
004 *
005 * $Id$
006 */
007 package com.hammurapi.config;
008
009
010 /**
011 * <!-- begin-user-doc -->
012 * A representation of the model object '<em><b>Object Definition</b></em>'.
013 * <!-- end-user-doc -->
014 *
015 * <!-- begin-model-doc -->
016 * Definition of an object to instantiate and configure.
017 * <!-- end-model-doc -->
018 *
019 * <p>
020 * The following features are supported:
021 * <ul>
022 * <li>{@link com.hammurapi.config.ObjectDefinition#getConstructor <em>Constructor</em>}</li>
023 * <li>{@link com.hammurapi.config.ObjectDefinition#getValue <em>Value</em>}</li>
024 * <li>{@link com.hammurapi.config.ObjectDefinition#getType <em>Type</em>}</li>
025 * </ul>
026 * </p>
027 *
028 * @see com.hammurapi.config.ConfigPackage#getObjectDefinition()
029 * @model
030 * @generated
031 */
032 public interface ObjectDefinition extends Factory, PropertySource {
033 /**
034 * Returns the value of the '<em><b>Constructor</b></em>' containment reference.
035 * <!-- begin-user-doc -->
036 * <!-- end-user-doc -->
037 * <!-- begin-model-doc -->
038 * Constructor definition.
039 * <!-- end-model-doc -->
040 * @return the value of the '<em>Constructor</em>' containment reference.
041 * @see #setConstructor(Constructor)
042 * @see com.hammurapi.config.ConfigPackage#getObjectDefinition_Constructor()
043 * @model containment="true"
044 * @generated
045 */
046 Constructor getConstructor();
047
048 /**
049 * Sets the value of the '{@link com.hammurapi.config.ObjectDefinition#getConstructor <em>Constructor</em>}' containment reference.
050 * <!-- begin-user-doc -->
051 * <!-- end-user-doc -->
052 * @param value the new value of the '<em>Constructor</em>' containment reference.
053 * @see #getConstructor()
054 * @generated
055 */
056 void setConstructor(Constructor value);
057
058 /**
059 * Returns the value of the '<em><b>Value</b></em>' attribute.
060 * <!-- begin-user-doc -->
061 * <!-- end-user-doc -->
062 * <!-- begin-model-doc -->
063 * Object value. If value is present, then the object shall have a single argument constructor. The runtime configuration code will attempt to convert string value to the constructor parameter type, if needed.
064 * <!-- end-model-doc -->
065 * @return the value of the '<em>Value</em>' attribute.
066 * @see #setValue(String)
067 * @see com.hammurapi.config.ConfigPackage#getObjectDefinition_Value()
068 * @model
069 * @generated
070 */
071 String getValue();
072
073 /**
074 * Sets the value of the '{@link com.hammurapi.config.ObjectDefinition#getValue <em>Value</em>}' attribute.
075 * <!-- begin-user-doc -->
076 * <!-- end-user-doc -->
077 * @param value the new value of the '<em>Value</em>' attribute.
078 * @see #getValue()
079 * @generated
080 */
081 void setValue(String value);
082
083 /**
084 * Returns the value of the '<em><b>Type</b></em>' attribute.
085 * <!-- begin-user-doc -->
086 * <!-- end-user-doc -->
087 * <!-- begin-model-doc -->
088 * Class name. The class shall have a default public constructor, unless there is a constructor definition for the object or value is provided in the definition.
089 * <!-- end-model-doc -->
090 * @return the value of the '<em>Type</em>' attribute.
091 * @see #setType(String)
092 * @see com.hammurapi.config.ConfigPackage#getObjectDefinition_Type()
093 * @model
094 * @generated
095 */
096 String getType();
097
098 /**
099 * Sets the value of the '{@link com.hammurapi.config.ObjectDefinition#getType <em>Type</em>}' attribute.
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @param value the new value of the '<em>Type</em>' attribute.
103 * @see #getType()
104 * @generated
105 */
106 void setType(String value);
107
108 } // ObjectDefinition