[savara-commits] savara SVN: r545 - in branches/experimental/2.0.x/bundles/org.savara.contract: META-INF and 5 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Fri Jan 7 11:53:40 EST 2011
Author: objectiser
Date: 2011-01-07 11:53:40 -0500 (Fri, 07 Jan 2011)
New Revision: 545
Added:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGenerator.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGeneratorFactory.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/Messages.properties
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractGeneratorImpl.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractIntrospector.java
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/osgi/
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/osgi/Activator.java
Removed:
branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/model/osgi/
Modified:
branches/experimental/2.0.x/bundles/org.savara.contract/.classpath
branches/experimental/2.0.x/bundles/org.savara.contract/.project
branches/experimental/2.0.x/bundles/org.savara.contract/META-INF/MANIFEST.MF
branches/experimental/2.0.x/bundles/org.savara.contract/pom.xml
Log:
Moved org.savara.protoco.contract (plugin) code into org.savara.contract bundle.
Modified: branches/experimental/2.0.x/bundles/org.savara.contract/.classpath
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.contract/.classpath 2011-01-07 16:36:08 UTC (rev 544)
+++ branches/experimental/2.0.x/bundles/org.savara.contract/.classpath 2011-01-07 16:53:40 UTC (rev 545)
@@ -6,4 +6,5 @@
<classpathentry kind="var" path="M2_REPO/org/scribble/bundles/org.scribble.common/2.0.0-SNAPSHOT/org.scribble.common-2.0.0-SNAPSHOT.jar" sourcepath="M2_REPO/org/scribble/bundles/org.scribble.common/2.0.0-SNAPSHOT/org.scribble.common-2.0.0-SNAPSHOT-sources.jar"/>
<classpathentry kind="var" path="M2_REPO/org/scribble/bundles/org.scribble.protocol/2.0.0-SNAPSHOT/org.scribble.protocol-2.0.0-SNAPSHOT.jar" sourcepath="M2_REPO/org/scribble/bundles/org.scribble.protocol/2.0.0-SNAPSHOT/org.scribble.protocol-2.0.0-SNAPSHOT-sources.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="src" path="/org.savara.core"/>
</classpath>
\ No newline at end of file
Modified: branches/experimental/2.0.x/bundles/org.savara.contract/.project
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.contract/.project 2011-01-07 16:36:08 UTC (rev 544)
+++ branches/experimental/2.0.x/bundles/org.savara.contract/.project 2011-01-07 16:53:40 UTC (rev 545)
@@ -1,5 +1,5 @@
<projectDescription>
- <name>org.savara.contract.model</name>
+ <name>org.savara.contract</name>
<comment>The SAVARA project. NO_M2ECLIPSE_SUPPORT: Project files created with the maven-eclipse-plugin are not supported in M2Eclipse.</comment>
<projects/>
<buildSpec>
Modified: branches/experimental/2.0.x/bundles/org.savara.contract/META-INF/MANIFEST.MF
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.contract/META-INF/MANIFEST.MF 2011-01-07 16:36:08 UTC (rev 544)
+++ branches/experimental/2.0.x/bundles/org.savara.contract/META-INF/MANIFEST.MF 2011-01-07 16:53:40 UTC (rev 545)
@@ -1,11 +1,12 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: SAVARA Contract Model
-Bundle-SymbolicName: org.savara.contract.model
-Bundle-Version: 2.0.0.qualifier
-Bundle-Activator: org.savara.contract.model.osgi.Activator
+Bundle-Name: SAVARA Contract
+Bundle-SymbolicName: org.savara.contract
+Bundle-Version: 2.0.0.SNAPSHOT
+Bundle-Activator: org.savara.contract.osgi.Activator
Bundle-Vendor: www.savara.org
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: org.osgi.framework
-Require-Bundle: org.scribble.common
+Require-Bundle: org.scribble.common,
+ org.savara.core
Export-Package: org.savara.contract.model
Modified: branches/experimental/2.0.x/bundles/org.savara.contract/pom.xml
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.contract/pom.xml 2011-01-07 16:36:08 UTC (rev 544)
+++ branches/experimental/2.0.x/bundles/org.savara.contract/pom.xml 2011-01-07 16:53:40 UTC (rev 545)
@@ -2,10 +2,10 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.savara.bundles</groupId>
- <artifactId>org.savara.contract.model</artifactId>
+ <artifactId>org.savara.contract</artifactId>
<version>2.0.0-SNAPSHOT</version>
<packaging>jar</packaging>
- <name>Savara::Bundles::ContractModel</name>
+ <name>Savara::Bundles::Contract</name>
<parent>
<groupId>org.savara</groupId>
Added: branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGenerator.java
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGenerator.java (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGenerator.java 2011-01-07 16:53:40 UTC (rev 545)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.savara.contract.generator;
+
+import org.savara.contract.model.Contract;
+import org.scribble.protocol.model.Protocol;
+
+/**
+ * This interface represents the capability that generates a contract
+ * from a protocol associated with a particular interacting role.
+ *
+ */
+public interface ContractGenerator {
+
+ /**
+ * This method generates a contract associated with a supplied located
+ * protocol.
+ *
+ * @param cm The protocol
+ * @return The contract
+ */
+ public Contract generate(Protocol cm) throws IllegalArgumentException;
+
+}
Added: branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGeneratorFactory.java
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGeneratorFactory.java (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/ContractGeneratorFactory.java 2011-01-07 16:53:40 UTC (rev 545)
@@ -0,0 +1,38 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.savara.contract.generator;
+
+import org.savara.contract.generator.impl.ContractGeneratorImpl;
+
+/**
+ * This class provides access to a contract generator.
+ *
+ */
+public class ContractGeneratorFactory {
+
+ /**
+ * This method returns an instance of the ContractGenerator
+ * interface.
+ *
+ * @return The contract generator
+ */
+ public static ContractGenerator getContractGenerator() {
+ return(new ContractGeneratorImpl());
+ }
+
+}
Added: branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/Messages.properties
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/Messages.properties (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/Messages.properties 2011-01-07 16:53:40 UTC (rev 545)
@@ -0,0 +1,20 @@
+#/*
+# * JBoss, Home of Professional Open Source
+# * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+# * by the @authors tag. All rights reserved.
+# * See the copyright.txt in the distribution for a
+# * full listing of individual contributors.
+# * This copyrighted material is made available to anyone wishing to use,
+# * modify, copy, or redistribute it subject to the terms and conditions
+# * of the GNU Lesser General Public License, v. 2.1.
+# * This program is distributed in the hope that it will be useful, but WITHOUT A
+# * 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,
+# * v.2.1 along with this distribution; if not, write to the Free Software
+# * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+# * MA 02110-1301, USA.
+# */
+
+SAVARAPC-00001=Protocol must be supplied
+SAVARAPC-00002=Contract generation requires a protocol that represents the local behaviour associated with a particular role
Added: branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractGeneratorImpl.java
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractGeneratorImpl.java (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractGeneratorImpl.java 2011-01-07 16:53:40 UTC (rev 545)
@@ -0,0 +1,63 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.savara.contract.generator.impl;
+
+import java.text.MessageFormat;
+
+import org.savara.contract.model.Contract;
+import org.savara.contract.generator.ContractGenerator;
+import org.scribble.protocol.model.Protocol;
+
+/**
+ * This class generates a contract from a protocol defining the behaviour of
+ * multiple interacting roles.
+ *
+ */
+public class ContractGeneratorImpl implements ContractGenerator {
+
+ /**
+ * This method generates a contract associated with a supplied located
+ * protocol.
+ *
+ * @param cm The protocol
+ * @return The contract
+ */
+ public Contract generate(Protocol cm) throws IllegalArgumentException {
+
+ // Check parameters
+ if (cm == null) {
+ throw new IllegalArgumentException(MessageFormat.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.savara.protocol.contract.Messages").
+ getString("SAVARAPC-00001"), (Object)null));
+
+ } else if (cm.getRole() == null) {
+ throw new IllegalArgumentException(MessageFormat.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.savara.protocol.contract.Messages").
+ getString("SAVARAPC-00002"), (Object)null));
+ }
+
+ ContractIntrospector introspector=new ContractIntrospector(cm);
+
+ introspector.process();
+
+ return(introspector.getContract());
+ }
+
+}
Added: branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractIntrospector.java
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractIntrospector.java (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/generator/impl/ContractIntrospector.java 2011-01-07 16:53:40 UTC (rev 545)
@@ -0,0 +1,250 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This 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.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software 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 software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.savara.contract.generator.impl;
+
+import java.text.MessageFormat;
+import java.util.logging.Logger;
+
+import org.savara.contract.model.Contract;
+import org.savara.contract.model.Interface;
+import org.savara.contract.model.MessageExchangePattern;
+import org.savara.contract.model.OneWayRequestMEP;
+import org.savara.contract.model.RequestResponseMEP;
+import org.savara.contract.model.Type;
+import org.savara.contract.model.TypeDefinition;
+import org.savara.model.util.InteractionUtil;
+import org.scribble.protocol.model.AbstractModelObjectVisitor;
+import org.scribble.protocol.model.Protocol;
+import org.scribble.protocol.model.Interaction;
+import org.scribble.protocol.model.Run;
+import org.scribble.protocol.model.ModelObject;
+import org.scribble.protocol.model.Role;
+import org.scribble.protocol.model.TypeReference;
+
+/**
+ * This class examines a protocol to determine the contract that represents
+ * the static functional interface to the role's behaviour.
+ *
+ */
+public class ContractIntrospector extends AbstractModelObjectVisitor {
+
+ private Contract m_contract=new Contract();
+ private java.util.Set<Protocol> m_processedProtocols=null;
+ private Role m_role=null;
+ private Protocol m_protocol=null;
+
+ private static Logger logger = Logger.getLogger(ContractIntrospector.class.getName());
+
+ /**
+ * Constructor for the contract introspector.
+ *
+ * @param protocol The protocol to introspect
+ */
+ public ContractIntrospector(Protocol protocol) {
+ this(protocol, null, null);
+ }
+
+ /**
+ * Constructor for the contract introspector.
+ *
+ * @param protocol The protocol being introspected
+ * @param contract The optional contract being derived
+ * @param processed The optional set of protocols currently processed
+ */
+ public ContractIntrospector(Protocol protocol, Contract contract,
+ java.util.Set<Protocol> processed) {
+ m_contract = contract;
+
+ if (m_contract == null) {
+ m_contract = new Contract();
+ }
+
+ if (processed != null) {
+ m_processedProtocols = processed;
+ } else {
+ m_processedProtocols = new java.util.HashSet<Protocol>();
+ }
+
+ m_protocol = protocol;
+
+ if (protocol != null) {
+ m_role = protocol.getRole();
+ }
+ }
+
+ /**
+ * This method returns the contract being derived.
+ *
+ * @return The contract
+ */
+ public Contract getContract() {
+ return(m_contract);
+ }
+
+ /**
+ * This method returns the interface.
+ *
+ * @return The interface
+ */
+ public Interface getInterface() {
+ Interface ret=getContract().getInterface(m_role.getName());
+
+ if (ret == null) {
+ // Create interface for the role
+ ret = new Interface();
+ ret.setName(m_role.getName());
+
+ getContract().getInterfaces().add(ret);
+ }
+
+ return(ret);
+ }
+
+ /**
+ * This method returns the set of processed protocols.
+ *
+ * @return The processed protocols
+ */
+ public java.util.Set<Protocol> getProcessedProtocols() {
+ return(m_processedProtocols);
+ }
+
+ /**
+ * This method introspects the supplied protocol to derive information
+ * that can be used to define the functional contract for the role
+ * associated with the protocol.
+ *
+ * @param conv The located protocol
+ */
+ public void process() throws IllegalStateException {
+
+ if (m_protocol == null) {
+ throw new IllegalStateException(MessageFormat.format(
+ java.util.PropertyResourceBundle.getBundle(
+ "org.savara.protocol.contract.Messages").
+ getString("SAVARAPC-00001"), (Object)null));
+ }
+
+ m_protocol.visit(this);
+ }
+
+ public boolean process(ModelObject obj) {
+ boolean f_visitChildren=true;
+
+ if (obj.getClass() == Protocol.class) {
+
+ // Only visit children if same protocol that is being visited
+ f_visitChildren = (obj == m_protocol);
+
+ } else if (obj.getClass() == Run.class) {
+ Run run=(Run)obj;
+
+ Protocol toProtocol=run.getProtocol();
+
+ // Check if protocol already processed to avoid stack overflow
+ if (m_processedProtocols.contains(toProtocol) == false) {
+ m_processedProtocols.add(toProtocol);
+
+ ContractIntrospector ci=new ContractIntrospector(toProtocol,
+ getContract(), getProcessedProtocols());
+
+ ci.process();
+ } else {
+ logger.fine("Invoked definition not found for "+run.getProtocolReference());
+ }
+ } else if (obj.getClass() == Interaction.class) {
+ accept((Interaction)obj);
+ }
+
+ return(f_visitChildren);
+ }
+
+ /**
+ * This method introspects the supplied interaction to generate Message Exchange
+ * Patterns on the contract interface.
+ *
+ * @param interaction The interaction
+ */
+ public void accept(Interaction interaction) {
+
+ // Check if the interacton is being received
+ if (interaction.getFromRole() != null &&
+ interaction.getFromRole().equals(m_role) == false) {
+
+ // Received by the role, but need to check if its replyTo
+ // has been set, indicating it is receiving a response
+ if (InteractionUtil.getReplyToLabel(interaction) == null ||
+ InteractionUtil.getReplyToLabel(interaction).trim().length() == 0) {
+
+ // Receiving a request - so record this in the contract
+ Interface intf=getInterface();
+
+ if (interaction.getMessageSignature().getOperation() != null) {
+
+ // Check if message exchange pattern exists for operation
+ MessageExchangePattern mep=intf.getMessageExchangePatternForOperation(
+ interaction.getMessageSignature().getOperation());
+
+ if (mep == null) {
+ // Create new MEP
+ if (InteractionUtil.getRequestLabel(interaction) != null) {
+ mep = new RequestResponseMEP();
+ } else {
+ mep = new OneWayRequestMEP();
+ }
+
+ mep.setOperation(interaction.getMessageSignature().getOperation());
+
+ for (int i=0; i < interaction.getMessageSignature().getTypeReferences().size(); i++) {
+ mep.getTypes().add(convertType(interaction.getMessageSignature().getTypeReferences().get(i)));
+ }
+
+ intf.getMessageExchangePatterns().add(mep);
+ }
+ }
+
+ } else {
+
+ }
+ }
+ }
+
+ /**
+ * This method converts a protocol type reference into a contract model type.
+ *
+ * @param tref The protocol type reference
+ * @return The type
+ */
+ public Type convertType(TypeReference tref) {
+ Type ret=new Type();
+
+ TypeDefinition td=new TypeDefinition();
+ td.setName(tref.getLocalpart());
+ td.setNamespace(tref.getNamespace());
+ //td.setTypeSystem(typeSystem);
+
+ ret.getTypeDefinitions().add(td);
+ ret.setName(td.getName());
+
+ return(ret);
+ }
+}
Added: branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/osgi/Activator.java
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/osgi/Activator.java (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.contract/src/main/java/org/savara/contract/osgi/Activator.java 2011-01-07 16:53:40 UTC (rev 545)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * 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,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.savara.contract.osgi;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ }
+
+}
More information about the savara-commits
mailing list