org.etsi.uri.gcm.api.control.CollectiveInterfaceController Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of fractal-gcm-api Show documentation
Show all versions of fractal-gcm-api Show documentation
Grid Component Model Standardization
The newest version!
/*
* ################################################################
*
* Fractal GCM Management API
*
* Copyright (C) 2009 INRIA, University of
* Nice-Sophia Antipolis, ActiveEon
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* Contact: [email protected]
*
* Authors: INRIA, University of Nice-Sophia Antipolis, ActiveEon.
*
* ################################################################
*/
package org.etsi.uri.gcm.api.control;
import org.objectweb.fractal.api.Interface;
import org.objectweb.fractal.api.control.IllegalBindingException;
import org.objectweb.fractal.api.type.InterfaceType;
/**
* Component interface to control the compatibility between a collective
* interface of the component to which it belongs and a component interface
* which has to be bound to the collective interface.
*
* @author INRIA, University of Nice-Sophia Antipolis, ActiveEon
*/
public interface CollectiveInterfaceController {
/**
* Ensures the type compatibility between a collective interface of the
* component to which this interface belongs and a component interface which
* has to be bound to the collective interface.
*
* @param itfType
* Collective interface type of the component to which this
* interface belongs.
* @param itf
* Component interface which has to be bound to the collective
* interface.
* @throws IllegalBindingException
* If this component interface is incompatible with this
* collective interface.
*/
public void ensureGCMCompatibility(InterfaceType itfType, Interface itf)
throws IllegalBindingException;
}