blob: 56c44bcbd323cf33bee61008043f5fbbb9b27bb4 [file] [log] [blame]
/**
* Copyright (c) 2018 CEA
*
* 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:
* Jérémie Tatibouet (CEA) jeremie.tatibouet@cea.fr - Initial API and implementation
* Benoit Maggi (CEA) benoit.maggi@cea.fr - Initial API and implementation
* Shuai Li (CEA) shuai.li@cea.fr - Integration of sensiNact and Web of Things Thing Description
*
*/
package org.eclipse.papyrus.iotml.wot;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Thing</b></em>'.
* <!-- end-user-doc -->
*
* <p>
* The following features are supported:
* </p>
* <ul>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getTitle <em>Title</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getDescription <em>Description</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getBase <em>Base</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getId <em>Id</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getSupport <em>Support</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getSecurity <em>Security</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getSecurityDefinitions <em>Security Definitions</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getLinks <em>Links</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getEvents <em>Events</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getActions <em>Actions</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getProperties <em>Properties</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getVersion <em>Version</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getAType <em>AType</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getAContext <em>AContext</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getForms <em>Forms</em>}</li>
* <li>{@link org.eclipse.papyrus.iotml.wot.Thing#getBase_Class <em>Base Class</em>}</li>
* </ul>
*
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing()
* @model
* @generated
*/
public interface Thing extends EObject {
/**
* Returns the value of the '<em><b>Title</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Title</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Title</em>' attribute.
* @see #setTitle(String)
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Title()
* @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
String getTitle();
/**
* Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.Thing#getTitle <em>Title</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Title</em>' attribute.
* @see #getTitle()
* @generated
*/
void setTitle(String value);
/**
* Returns the value of the '<em><b>Description</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Description</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Description</em>' attribute.
* @see #setDescription(String)
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Description()
* @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
String getDescription();
/**
* Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.Thing#getDescription <em>Description</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Description</em>' attribute.
* @see #getDescription()
* @generated
*/
void setDescription(String value);
/**
* Returns the value of the '<em><b>Base</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Base</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Base</em>' attribute.
* @see #setBase(String)
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Base()
* @model dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
String getBase();
/**
* Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.Thing#getBase <em>Base</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Base</em>' attribute.
* @see #getBase()
* @generated
*/
void setBase(String value);
/**
* Returns the value of the '<em><b>Id</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Id</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Id</em>' attribute.
* @see #setId(String)
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Id()
* @model dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
String getId();
/**
* Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.Thing#getId <em>Id</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Id</em>' attribute.
* @see #getId()
* @generated
*/
void setId(String value);
/**
* Returns the value of the '<em><b>Support</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Support</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Support</em>' attribute.
* @see #setSupport(String)
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Support()
* @model dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
String getSupport();
/**
* Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.Thing#getSupport <em>Support</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Support</em>' attribute.
* @see #getSupport()
* @generated
*/
void setSupport(String value);
/**
* Returns the value of the '<em><b>Security</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.SecurityScheme}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Security</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Security</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Security()
* @model required="true" ordered="false"
* @generated
*/
EList<SecurityScheme> getSecurity();
/**
* Returns the value of the '<em><b>Security Definitions</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.SecurityScheme}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Security Definitions</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Security Definitions</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_SecurityDefinitions()
* @model required="true" ordered="false"
* @generated
*/
EList<SecurityScheme> getSecurityDefinitions();
/**
* Returns the value of the '<em><b>Links</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.Link}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Links</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Links</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Links()
* @model transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
EList<Link> getLinks();
/**
* Returns the value of the '<em><b>Events</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.EventAffordance}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Events</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Events</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Events()
* @model transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
EList<EventAffordance> getEvents();
/**
* Returns the value of the '<em><b>Actions</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.ActionAffordance}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Actions</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Actions</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Actions()
* @model transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
EList<ActionAffordance> getActions();
/**
* Returns the value of the '<em><b>Properties</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.PropertyAffordance}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Properties</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Properties</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Properties()
* @model transient="true" volatile="true" derived="true" ordered="false"
* @generated
*/
EList<PropertyAffordance> getProperties();
/**
* Returns the value of the '<em><b>Version</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Version</em>' attribute isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Version</em>' attribute.
* @see #setVersion(String)
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Version()
* @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
* @generated
*/
String getVersion();
/**
* Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.Thing#getVersion <em>Version</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Version</em>' attribute.
* @see #getVersion()
* @generated
*/
void setVersion(String value);
/**
* Returns the value of the '<em><b>AType</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.Type}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>AType</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>AType</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_AType()
* @model ordered="false"
* @generated
*/
EList<Type> getAType();
/**
* Returns the value of the '<em><b>AContext</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.Context}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>AContext</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>AContext</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_AContext()
* @model ordered="false"
* @generated
*/
EList<Context> getAContext();
/**
* Returns the value of the '<em><b>Forms</b></em>' reference list.
* The list contents are of type {@link org.eclipse.papyrus.iotml.wot.Form}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Forms</em>' reference list isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Forms</em>' reference list.
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Forms()
* @model ordered="false"
* @generated
*/
EList<Form> getForms();
/**
* Returns the value of the '<em><b>Base Class</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Base Class</em>' reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Base Class</em>' reference.
* @see #setBase_Class(org.eclipse.uml2.uml.Class)
* @see org.eclipse.papyrus.iotml.wot.WoTPackage#getThing_Base_Class()
* @model ordered="false"
* @generated
*/
org.eclipse.uml2.uml.Class getBase_Class();
/**
* Sets the value of the '{@link org.eclipse.papyrus.iotml.wot.Thing#getBase_Class <em>Base Class</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Base Class</em>' reference.
* @see #getBase_Class()
* @generated
*/
void setBase_Class(org.eclipse.uml2.uml.Class value);
} // Thing