blob: 3491d484245f7412707074bfea2a735bab2f45b0 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2010, 2011 David A Carlson 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:
* David A Carlson (XMLmodeling.com) - initial API and implementation
*******************************************************************************/
package org.eclipse.mdht.uml.hl7.rim.operations;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.common.util.Enumerator;
import org.eclipse.emf.ecore.EClassifier;
import org.eclipse.mdht.uml.hl7.rim.Entity;
import org.eclipse.mdht.uml.hl7.rim.RIMPackage;
import org.eclipse.mdht.uml.hl7.rim.Role;
import org.eclipse.ocl.ParserException;
import org.eclipse.ocl.ecore.OCL;
import org.eclipse.ocl.expressions.OCLExpression;
/**
* <!-- begin-user-doc -->
* A static utility class that provides operations related to '<em><b>Entity</b></em>' model objects.
* <!-- end-user-doc -->
*
* <p>
* The following operations are supported:
* </p>
* <ul>
* <li>{@link org.eclipse.mdht.uml.hl7.rim.Entity#getClassCode() <em>Get Class Code</em>}</li>
* <li>{@link org.eclipse.mdht.uml.hl7.rim.Entity#getDeterminerCode() <em>Get Determiner Code</em>}</li>
* <li>{@link org.eclipse.mdht.uml.hl7.rim.Entity#getPlayedRoles() <em>Get Played Roles</em>}</li>
* <li>{@link org.eclipse.mdht.uml.hl7.rim.Entity#getScopedRoles() <em>Get Scoped Roles</em>}</li>
* <li>{@link org.eclipse.mdht.uml.hl7.rim.Entity#isClassCodeDefined() <em>Is Class Code Defined</em>}</li>
* <li>{@link org.eclipse.mdht.uml.hl7.rim.Entity#isDeterminerCodeDefined() <em>Is Determiner Code Defined</em>}</li>
* </ul>
*
* @generated
*/
public class EntityOperations extends InfrastructureRootOperations {
/**
* The cached environment for evaluating OCL expressions.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
protected static final ThreadLocal<OCL> EOCL_ENV = new ThreadLocal<OCL>() {
@Override
public OCL initialValue() {
return OCL.newInstance();
}
};
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected EntityOperations() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static Enumerator getClassCode(Entity entity) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static Enumerator getDeterminerCode(Entity entity) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static EList<Role> getPlayedRoles(Entity entity) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static EList<Role> getScopedRoles(Entity entity) {
// TODO: implement this method
// Ensure that you remove @generated or mark it @generated NOT
throw new UnsupportedOperationException();
}
/**
* The cached OCL expression body for the '{@link #isClassCodeDefined(Entity) <em>Is Class Code Defined</em>}' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isClassCodeDefined(Entity)
* @generated
* @ordered
*/
protected static final String IS_CLASS_CODE_DEFINED__EOCL_EXP = "self.isDefined('classCode')";
/**
* The cached OCL query for the '{@link #isClassCodeDefined(Entity) <em>Is Class Code Defined</em>}' query operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isClassCodeDefined(Entity)
* @generated
* @ordered
*/
protected static ThreadLocal<OCLExpression<EClassifier>> IS_CLASS_CODE_DEFINED__EOCL_QRY = new ThreadLocal<OCLExpression<EClassifier>>();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static boolean isClassCodeDefined(Entity entity) {
if (IS_CLASS_CODE_DEFINED__EOCL_QRY.get() == null) {
synchronized (EOCL_ENV) {
OCL.Helper helper = EOCL_ENV.get().createOCLHelper();
helper.setOperationContext(
RIMPackage.Literals.ENTITY, RIMPackage.Literals.ENTITY.getEAllOperations().get(12));
try {
IS_CLASS_CODE_DEFINED__EOCL_QRY.set(helper.createQuery(IS_CLASS_CODE_DEFINED__EOCL_EXP));
} catch (ParserException pe) {
throw new UnsupportedOperationException(pe.getLocalizedMessage());
}
}
}
OCL.Query query = EOCL_ENV.get().createQuery(IS_CLASS_CODE_DEFINED__EOCL_QRY.get());
return ((Boolean) query.evaluate(entity)).booleanValue();
}
/**
* The cached OCL expression body for the '{@link #isDeterminerCodeDefined(Entity) <em>Is Determiner Code Defined</em>}' operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isDeterminerCodeDefined(Entity)
* @generated
* @ordered
*/
protected static final String IS_DETERMINER_CODE_DEFINED__EOCL_EXP = "self.isDefined('determinerCode')";
/**
* The cached OCL query for the '{@link #isDeterminerCodeDefined(Entity) <em>Is Determiner Code Defined</em>}' query operation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isDeterminerCodeDefined(Entity)
* @generated
* @ordered
*/
protected static ThreadLocal<OCLExpression<EClassifier>> IS_DETERMINER_CODE_DEFINED__EOCL_QRY = new ThreadLocal<OCLExpression<EClassifier>>();
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public static boolean isDeterminerCodeDefined(Entity entity) {
if (IS_DETERMINER_CODE_DEFINED__EOCL_QRY.get() == null) {
synchronized (EOCL_ENV) {
OCL.Helper helper = EOCL_ENV.get().createOCLHelper();
helper.setOperationContext(
RIMPackage.Literals.ENTITY, RIMPackage.Literals.ENTITY.getEAllOperations().get(13));
try {
IS_DETERMINER_CODE_DEFINED__EOCL_QRY.set(helper.createQuery(IS_DETERMINER_CODE_DEFINED__EOCL_EXP));
} catch (ParserException pe) {
throw new UnsupportedOperationException(pe.getLocalizedMessage());
}
}
}
OCL.Query query = EOCL_ENV.get().createQuery(IS_DETERMINER_CODE_DEFINED__EOCL_QRY.get());
return ((Boolean) query.evaluate(entity)).booleanValue();
}
} // EntityOperations