at.spardat.xma.boot.component.IBootRuntime Maven / Gradle / Ivy
/*******************************************************************************
* Copyright (c) 2003, 2007 s IT Solutions AT Spardat GmbH .
* 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:
* s IT Solutions AT Spardat GmbH - initial API and implementation
*******************************************************************************/
/*
* Created on : 26.01.2004
* Created by : s3595
*/
package at.spardat.xma.boot.component;
/**
* interface used by the runtime to communicate with the boot runtime
*
* @author s3595
* @version $Id: IBootRuntime.java 2084 2007-11-27 14:53:31Z s3460 $
*/
public interface IBootRuntime {
/**
* get a component
*
* @param component the absolute uri of the desired component in another or the same webapplication.
*
* @return IComponent the component
* @throws Exception unable to load, create or instantiate the component
*/
public IComponent getComponent( String component) throws Exception;
/**
* cleanup components and application resources.
* logout from application, if this component is the last one for this application.
*
* @param rtc the terminating component
*/
public void endComponent(IComponent rtc) ;
/**
* get digest (version hash code) for the current application
*
* @return digest byte array
*/
public byte[] getDigest();
/**
* get the name of the class that implements the interface name given as input parameter.
* returns the client implemenation
*
* @param interfaceName name of the plugin interface
* @return name of the implementation class.
*/
public String getPluginImplClient( String interfaceName );
}