From a40e527938d76ba71f211da7e327adb50384ba69 Mon Sep 17 00:00:00 2001 From: lresende Date: Wed, 11 Nov 2009 23:26:33 +0000 Subject: Moving 1.x tags git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@835157 13f79535-47bb-0310-9956-ffa450edef68 --- .../tuscany/host/runtime/TuscanyRuntime.java | 146 +++++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 sca-java-1.x/tags/1.0-incubator-M2/kernel/host-api/src/main/java/org/apache/tuscany/host/runtime/TuscanyRuntime.java (limited to 'sca-java-1.x/tags/1.0-incubator-M2/kernel/host-api/src/main/java/org/apache/tuscany/host/runtime') diff --git a/sca-java-1.x/tags/1.0-incubator-M2/kernel/host-api/src/main/java/org/apache/tuscany/host/runtime/TuscanyRuntime.java b/sca-java-1.x/tags/1.0-incubator-M2/kernel/host-api/src/main/java/org/apache/tuscany/host/runtime/TuscanyRuntime.java new file mode 100644 index 0000000000..72bdc38774 --- /dev/null +++ b/sca-java-1.x/tags/1.0-incubator-M2/kernel/host-api/src/main/java/org/apache/tuscany/host/runtime/TuscanyRuntime.java @@ -0,0 +1,146 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.tuscany.host.runtime; + +import java.net.URL; + +import org.osoa.sca.SCA; + +import org.apache.tuscany.host.RuntimeInfo; +import org.apache.tuscany.host.MonitorFactory; + +/** + * @version $Rev$ $Date$ + */ +public interface TuscanyRuntime { + /** + * Returns the location of the SCDL used to boot this runtime. + * + * @return the location of the SCDL used to boot this runtime + */ + URL getSystemScdl(); + + /** + * Sets the location of the SCDL used to boot this runtime. + * + * @param systemScdl the location of the SCDL used to boot this runtime + */ + void setSystemScdl(URL systemScdl); + + /** + * Returns the name of the component associated with the application SCDL. + * @return the name of the component associated with the application SCDL + */ + String getApplicationName(); + + /** + * Sets the name of the component associated with the application SCDL. + * @param applicationName the name of the component associated with the application SCDL + */ + void setApplicationName(String applicationName); + + /** + * Returns the location of the default application's SCDL. + * + * @return the location of the default application's SCDL + */ + URL getApplicationScdl(); + + /** + * Sets the location of the default application's SCDL + * + * @param applicationScdl the location of the default application's SCDL + */ + void setApplicationScdl(URL applicationScdl); + + /** + * Returns the host ClassLoader that is parent to all Tuscany classloaders. + * + * @return the host's ClassLoader + */ + ClassLoader getHostClassLoader(); + + /** + * Sets the host ClassLoader; this will be a parent for all Tuscany classloaders. + * + * @param classLoader the host's ClassLoader + */ + void setHostClassLoader(ClassLoader classLoader); + + /** + * Returns the info this runtime will make available to service components. + * + * @return the info this runtime will make available to service components + */ + RuntimeInfo getRuntimeInfo(); + + /** + * Sets the info this runtime should make available to service components. + * The instance supplied here should be registered in the system composite with the name + * {@link RuntimeInfo#COMPONENT_NAME "RuntimeInfo"}. + * + * @param runtimeInfo the information this runtime should make available to service components + */ + void setRuntimeInfo(RuntimeInfo runtimeInfo); + + /** Returns the MonitorFactory that this runtime is using. + * + * @return the MonitorFactory that this runtime is using + */ + MonitorFactory getMonitorFactory(); + + /** + * Sets the MonitorFactory that this runtime should use. + * @param monitorFactory the MonitorFactory that this runtime should use + */ + void setMonitorFactory(MonitorFactory monitorFactory); + + /** + * Create the default MonitorFactory for this runtime. + * + * @return the default MonitorFactory for this runtime + */ + MonitorFactory createDefaultMonitorFactory(); + + /** + * Initialize a runtime. + * + */ + void initialize(); + + /** + * Destroy the runtime. Any further invocations should result in an error. + */ + void destroy(); + + /** + * Returns the current SCA context + */ + SCA getContext(); + + /** + * Get the application classloader + */ + ClassLoader getApplicationClassLoader(); + + /** + * Set the application classloader + */ + void setApplicationClassLoader(ClassLoader applicationClassLoader); +} -- cgit v1.2.3