/*******************************************************************************
 *  Copyright (c) 2017 CEA LIST.
 *
 *  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:
 *  		CEA LIST - Initial API and implementation
 *******************************************************************************/
/**
 */
package org.eclipse.papyrus.bmm.BMMProfile.impl;

import org.eclipse.emf.ecore.EClass;

import org.eclipse.papyrus.bmm.BMMProfile.BmmPackage;
import org.eclipse.papyrus.bmm.BMMProfile.BusinessPolicyGovernsBusinessProcess;

/**
 * <!-- begin-user-doc -->
 * An implementation of the model object '<em><b>Business Policy Governs Business Process</b></em>'.
 * <!-- end-user-doc -->
 *
 * @generated
 */
public class BusinessPolicyGovernsBusinessProcessImpl extends MotivationEdgeImpl implements BusinessPolicyGovernsBusinessProcess {
	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected BusinessPolicyGovernsBusinessProcessImpl() {
		super();
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	protected EClass eStaticClass() {
		return BmmPackage.Literals.BUSINESS_POLICY_GOVERNS_BUSINESS_PROCESS;
	}

} //BusinessPolicyGovernsBusinessProcessImpl
