Hi Tim, Can you explain the thinking behind having some of the interface methods take varargs and others List<Bundle> ? On the face of it List<Bundle> throughout would seem simpler.. am I missing something or was the first commit just an oversight?
-- Mark On 30 July 2010 12:32, <[email protected]> wrote: > Author: timothyjward > Date: Fri Jul 30 10:32:04 2010 > New Revision: 980724 > > URL: http://svn.apache.org/viewvc?rev=980724&view=rev > Log: > ARIES-371 - API for quiesce support > > Added: > incubator/aries/trunk/quiesce/ > incubator/aries/trunk/quiesce/pom.xml > incubator/aries/trunk/quiesce/quiesce-api/ > incubator/aries/trunk/quiesce/quiesce-api/pom.xml > incubator/aries/trunk/quiesce/quiesce-api/src/ > incubator/aries/trunk/quiesce/quiesce-api/src/main/ > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/ > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/ > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/ > > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/ > > > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/ > > > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/manager/ > > > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/manager/QuiesceCallback.java > > > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/manager/QuiesceManager.java > > > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/participant/ > > > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/participant/QuiesceParticipant.java > Modified: > incubator/aries/trunk/pom.xml > > Modified: incubator/aries/trunk/pom.xml > URL: > http://svn.apache.org/viewvc/incubator/aries/trunk/pom.xml?rev=980724&r1=980723&r2=980724&view=diff > > ============================================================================== > --- incubator/aries/trunk/pom.xml (original) > +++ incubator/aries/trunk/pom.xml Fri Jul 30 10:32:04 2010 > @@ -50,6 +50,7 @@ > <module>jpa</module> > <module>spi-fly</module> > <module>samples</module> > + <module>quiesce</module> > </modules> > > <build> > > Added: incubator/aries/trunk/quiesce/pom.xml > URL: > http://svn.apache.org/viewvc/incubator/aries/trunk/quiesce/pom.xml?rev=980724&view=auto > > ============================================================================== > --- incubator/aries/trunk/quiesce/pom.xml (added) > +++ incubator/aries/trunk/quiesce/pom.xml Fri Jul 30 10:32:04 2010 > @@ -0,0 +1,67 @@ > +<?xml version="1.0" encoding="UTF-8"?> > +<!-- > + 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. > +--> > +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=" > http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" > http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd > "> > + > + <parent> > + <groupId>org.apache.aries</groupId> > + <artifactId>java5-parent</artifactId> > + <version>0.2-incubating-SNAPSHOT</version> > + </parent> > + > + <modelVersion>4.0.0</modelVersion> > + <groupId>org.apache.aries.quiesce</groupId> > + <artifactId>quiesce</artifactId> > + <name>Apache Aries Quiesce</name> > + <version>0.2-incubating-SNAPSHOT</version> > + <packaging>pom</packaging> > + > + <description> > + Quiesce support for Aries > + </description> > + > + <scm> > + <connection>scm:svn: > http://svn.apache.org/repos/asf/incubator/aries/trunk/quiesce</connection> > + <developerConnection>scm:svn: > https://svn.apache.org/repos/asf/incubator/aries/trunk/quiesce > </developerConnection> > + <url>http://svn.apache.org/viewvc/incubator/aries/trunk/quiesce > </url> > + </scm> > + > + <dependencyManagement> > + <dependencies> > + </dependencies> > + </dependencyManagement> > + > + <modules> > + <module>quiesce-api</module> > + </modules> > + > + <build> > + <pluginManagement> > + <plugins> > + <plugin> > + <groupId>org.apache.maven.plugins</groupId> > + <artifactId>maven-release-plugin</artifactId> > + <version>2.0</version> > + <configuration> > + <useReleaseProfile>false</useReleaseProfile> > + <goals>deploy</goals> > + <arguments>-Papache-release > -DskipTests=true</arguments> > + </configuration> > + </plugin> > + </plugins> > + </pluginManagement> > + </build> > +</project> > > Added: incubator/aries/trunk/quiesce/quiesce-api/pom.xml > URL: > http://svn.apache.org/viewvc/incubator/aries/trunk/quiesce/quiesce-api/pom.xml?rev=980724&view=auto > > ============================================================================== > --- incubator/aries/trunk/quiesce/quiesce-api/pom.xml (added) > +++ incubator/aries/trunk/quiesce/quiesce-api/pom.xml Fri Jul 30 10:32:04 > 2010 > @@ -0,0 +1,49 @@ > +<!-- > + 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. > +--> > +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=" > http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" > http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd > "> > + <modelVersion>4.0.0</modelVersion> > + <parent> > + <groupId>org.apache.aries.quiesce</groupId> > + <artifactId>quiesce</artifactId> > + <version>0.2-incubating-SNAPSHOT</version> > + </parent> > + > + <artifactId>org.apache.aries.quiesce.api</artifactId> > + <packaging>bundle</packaging> > + <name>Apache Aries Quiesce API</name> > + <description> > + Quiesce API. > + </description> > + > + <properties> > + <aries.osgi.export.pkg> > + org.apache.aries.quiesce.manager; > + org.apache.aries.quiesce.participant; > + </aries.osgi.export.pkg> > + </properties> > + > + <dependencies> > + <dependency> > + <groupId>org.osgi</groupId> > + <artifactId>org.osgi.core</artifactId> > + <scope>provided</scope> > + </dependency> > + </dependencies> > + > +</project> > \ No newline at end of file > > Added: > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/manager/QuiesceCallback.java > URL: > http://svn.apache.org/viewvc/incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/manager/QuiesceCallback.java?rev=980724&view=auto > > ============================================================================== > --- > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/manager/QuiesceCallback.java > (added) > +++ > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/manager/QuiesceCallback.java > Fri Jul 30 10:32:04 2010 > @@ -0,0 +1,26 @@ > +/* > + * 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 WARRANTIESOR 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.aries.quiesce.manager; > + > +import org.osgi.framework.Bundle; > + > +public interface QuiesceCallback > +{ > + public void bundleQuiesced(Bundle ... bundlesQuiesced); > +} > \ No newline at end of file > > Added: > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/manager/QuiesceManager.java > URL: > http://svn.apache.org/viewvc/incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/manager/QuiesceManager.java?rev=980724&view=auto > > ============================================================================== > --- > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/manager/QuiesceManager.java > (added) > +++ > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/manager/QuiesceManager.java > Fri Jul 30 10:32:04 2010 > @@ -0,0 +1,28 @@ > +/* > + * 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 WARRANTIESOR 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.aries.quiesce.manager; > + > +import java.util.List; > +import org.osgi.framework.Bundle; > + > +public interface QuiesceManager > +{ > + public void quiesce(long timeout, List<Bundle> bundlesToQuiese); > + public void quiesce(List<Bundle> bundlesToQuiesce); > +} > \ No newline at end of file > > Added: > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/participant/QuiesceParticipant.java > URL: > http://svn.apache.org/viewvc/incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/participant/QuiesceParticipant.java?rev=980724&view=auto > > ============================================================================== > --- > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/participant/QuiesceParticipant.java > (added) > +++ > incubator/aries/trunk/quiesce/quiesce-api/src/main/java/org/apache/aries/quiesce/participant/QuiesceParticipant.java > Fri Jul 30 10:32:04 2010 > @@ -0,0 +1,28 @@ > +/* > + * 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 WARRANTIESOR 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.aries.quiesce.participant; > + > +import java.util.List; > +import org.apache.aries.quiesce.manager.QuiesceCallback; > +import org.osgi.framework.Bundle; > + > +public interface QuiesceParticipant > +{ > + public void quiesce(QuiesceCallback callback, List<Bundle> > bundlesToQuiesce); > +} > > >
