[jboss-cvs] JBossAS SVN: r69289 - in projects/cluster/ha-server-api/tags: 1.0.0.BETA3 and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Jan 24 09:28:09 EST 2008
Author: bstansberry at jboss.com
Date: 2008-01-24 09:28:09 -0500 (Thu, 24 Jan 2008)
New Revision: 69289
Added:
projects/cluster/ha-server-api/tags/1.0.0.BETA3/
projects/cluster/ha-server-api/tags/1.0.0.BETA3/pom.xml
projects/cluster/ha-server-api/tags/1.0.0.BETA3/src/main/java/org/jboss/ha/framework/interfaces/DistributedReplicantManager.java
Removed:
projects/cluster/ha-server-api/tags/1.0.0.BETA3/pom.xml
projects/cluster/ha-server-api/tags/1.0.0.BETA3/src/main/java/org/jboss/ha/framework/interfaces/DistributedReplicantManager.java
Log:
[maven-release-plugin] copy for tag 1.0.0.BETA3
Copied: projects/cluster/ha-server-api/tags/1.0.0.BETA3 (from rev 69239, projects/cluster/ha-server-api/trunk)
Deleted: projects/cluster/ha-server-api/tags/1.0.0.BETA3/pom.xml
===================================================================
--- projects/cluster/ha-server-api/trunk/pom.xml 2008-01-23 14:49:47 UTC (rev 69239)
+++ projects/cluster/ha-server-api/tags/1.0.0.BETA3/pom.xml 2008-01-24 14:28:09 UTC (rev 69289)
@@ -1,66 +0,0 @@
-<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.jboss.cluster</groupId>
- <artifactId>jboss-cluster</artifactId>
- <version>1.0.0.BETA3-SNAPSHOT</version>
- </parent>
- <modelVersion>4.0.0</modelVersion>
- <groupId>org.jboss.cluster</groupId>
- <artifactId>jboss-ha-server-api</artifactId>
- <packaging>jar</packaging>
- <version>1.0.0.BETA3-SNAPSHOT</version>
- <name>JBoss Cluster HA Client Classes</name>
- <url>http://www.jboss.org</url>
- <description>A set of server-side API classes for users of the JBoss AS clustering framework</description>
- <licenses>
- <license>
- <name>lgpl</name>
- <url>http://repository.jboss.com/licenses/lgpl.txt</url>
- </license>
- </licenses>
- <organization>
- <name>JBoss, a division of Red Hat, Inc.</name>
- <url>http://www.jboss.org</url>
- </organization>
-
- <scm>
- <connection>scm:svn:https://svn.jboss.org/repos/jbossas/projects/cluster/ha-server-api/trunk/</connection>
- </scm>
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-release-plugin</artifactId>
- <configuration>
- <!-- The tagBase property is needed during the release process so that the maven release plugin
- will create the release tag in the appropriate location. -->
- <tagBase>https://svn.jboss.org/repos/jbossas/projects/cluster/ha-server-api/tags</tagBase>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
- <!-- Do not add version information here, use ../build/pom.xml instead -->
- <dependencies>
- <!-- Global dependencies -->
- <dependency>
- <groupId>org.jboss</groupId>
- <artifactId>jboss-common-core</artifactId>
- <version>${version.jboss.common.core}</version>
- </dependency>
- <dependency>
- <groupId>jboss</groupId>
- <artifactId>jboss-logging-spi</artifactId>
- <version>${version.jboss.logging.spi}</version>
- </dependency>
- <!-- Test dependencies -->
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>${version.junit}</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
-</project>
-
Copied: projects/cluster/ha-server-api/tags/1.0.0.BETA3/pom.xml (from rev 69288, projects/cluster/ha-server-api/trunk/pom.xml)
===================================================================
--- projects/cluster/ha-server-api/tags/1.0.0.BETA3/pom.xml (rev 0)
+++ projects/cluster/ha-server-api/tags/1.0.0.BETA3/pom.xml 2008-01-24 14:28:09 UTC (rev 69289)
@@ -0,0 +1,61 @@
+<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.jboss.cluster</groupId>
+ <artifactId>jboss-cluster</artifactId>
+ <version>1.0.0.BETA3</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.jboss.cluster</groupId>
+ <artifactId>jboss-ha-server-api</artifactId>
+ <packaging>jar</packaging>
+ <version>1.0.0.BETA3</version>
+ <name>JBoss Cluster HA Client Classes</name>
+ <url>http://www.jboss.org</url>
+ <description>A set of server-side API classes for users of the JBoss AS clustering framework</description>
+ <licenses>
+ <license>
+ <name>lgpl</name>
+ <url>http://repository.jboss.com/licenses/lgpl.txt</url>
+ </license>
+ </licenses>
+ <organization>
+ <name>JBoss, a division of Red Hat, Inc.</name>
+ <url>http://www.jboss.org</url>
+ </organization>
+
+ <scm>
+ <connection>scm:svn:https://svn.jboss.org/repos/jbossas/projects/cluster/ha-server-api/tags/1.0.0.BETA3</connection>
+ </scm>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-release-plugin</artifactId>
+ <configuration>
+ <!-- The tagBase property is needed during the release process so that the maven release plugin
+ will create the release tag in the appropriate location. -->
+ <tagBase>https://svn.jboss.org/repos/jbossas/projects/cluster/ha-server-api/tags</tagBase>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <!-- Do not add version information here, use ../build/pom.xml instead -->
+ <dependencies>
+ <!-- Global dependencies -->
+ <dependency>
+ <groupId>jboss</groupId>
+ <artifactId>jboss-common-logging-spi</artifactId>
+ <version>${version.jboss.logging.spi}</version>
+ </dependency>
+ <!-- Test dependencies -->
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>${version.junit}</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+</project>
+
Deleted: projects/cluster/ha-server-api/tags/1.0.0.BETA3/src/main/java/org/jboss/ha/framework/interfaces/DistributedReplicantManager.java
===================================================================
--- projects/cluster/ha-server-api/trunk/src/main/java/org/jboss/ha/framework/interfaces/DistributedReplicantManager.java 2008-01-23 14:49:47 UTC (rev 69239)
+++ projects/cluster/ha-server-api/tags/1.0.0.BETA3/src/main/java/org/jboss/ha/framework/interfaces/DistributedReplicantManager.java 2008-01-24 14:28:09 UTC (rev 69289)
@@ -1,159 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
- * by the @authors tag. See the copyright.txt 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.jboss.ha.framework.interfaces;
-
-import org.jboss.ha.framework.interfaces.DistributedReplicantManager.ReplicantListener;
-import java.io.Serializable;
-import java.util.List;
-import java.util.Collection;
-
-/**
- *
- * DistributedReplicantManager is a service on top of HAPartition that provides a
- * cluster-wide distributed state which is node-specific. The DistributedReplicantManager (DRM)
- * service provides a <String key, Serializable replicant> tuple map. Each node in the cluster
- * stores its own data for a given key. This data is replicated so that reading values for a key
- * is always performed locally.
- *
- * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>.
- * @author <a href="mailto:sacha.labourey at cogito-info.ch">Sacha Labourey</a>.
- * @version $Revision$
- *
- * <p><b>Revisions:</b><br>
- * <p><b>2001/10/31: marcf</b>
- * <ol>
- * <li>DRM is no longer remote
- * </ol>
- * <p><b>2002/08/23: Sacha Labourey</b>
- * <ol>
- * <li>added isMasterReplica
- * </ol>
- */
-public interface DistributedReplicantManager
-{
- /**
- * When a particular key in the DistributedReplicantManager table gets modified, all listeners
- * will be notified of replicant changes for that key.
- */
- public interface ReplicantListener
- {
- /**
- * Callback called when the content/list of replicant for a given replicant key has changed
- * @param key The name of the key of the replicant that has changed
- * @param newReplicants The list of new replicants for the give replicant key.
- * This list will be in a consistent order on all
- * cluster nodes on which the current viewId is
- * in effect
- * @param newReplicantsViewId The new replicant view id corresponding to this change
- */
- public void replicantsChanged(String key, List newReplicants, int newReplicantsViewId);
- }
-
- /**
- * Subscribe a new listener {@link ReplicantListener} for replicant changes
- * @param key Name of the replicant, must be identical cluster-wide for all identical replicants
- * @param subscriber The subscribing {@link ReplicantListener}
- */
- public void registerListener(String key, ReplicantListener subscriber);
- /**
- * Unsubscribe a listener {@link ReplicantListener} that had subscribed for replicant changes
- * @param key Name of the replicant, must be identical cluster-wide for all identical replicants
- * @param subscriber The unsubscribing {@link ReplicantListener}
- */
- public void unregisterListener(String key, ReplicantListener subscriber);
-
- // State binding methods
- //
-
- /**
- * Add a replicant, it will be attached to this cluster node
- * @param key Replicant name. All replicas around the cluster must use the same key name.
- * @param replicant Local data of the replicant, that is, any serializable data
- * @throws Exception Thrown if a cluster communication problem occurs
- */
- public void add(String key, Serializable replicant) throws Exception;
-
- /**
- * Remove the entire key from the ReplicationService
- * @param key Name of the replicant
- * @throws Exception Thrown if a cluster communication problem occurs
- */
- public void remove(String key) throws Exception;
-
- /**
- * Lookup the replicant attached to this cluster node
- * @param key The name of the replicant
- * @return The local replicant for the given key name
- */
- public Serializable lookupLocalReplicant(String key);
-
- /**
- * Return a list of all replicants.
- * @param key The replicant name
- * @return A list of serialized replicants available around the cluster
- * for the given key. This list will be in the same order in all
- * nodes in the cluster.
- */
- public List lookupReplicants(String key);
-
- /**
- * Return a list of all replicants node names.
- * @param key The replicant name
- * @return A list of the node names of cluster nodes that have made available
- * a replicant for the given key. This list will be in the same
- * order in all nodes in the cluster.
- * @deprecated use lookupReplicantsNodes(key) instead,
- * calling ClusterNode.getName().
- */
- @Deprecated
- public List lookupReplicantsNodeNames(String key);
-
- /**
- * Return a list of all replicants nodes.
- * @param key The replicant name
- * @return A list of the ClusterNode instances that have made available
- * a replicant for the given key. This list will be in the same
- * order in all nodes in the cluster.
- */
- public List<ClusterNode> lookupReplicantsNodes(String key);
-
- /**
- * Return a list of all services that have at least one replicant.
- * @return A collection of service names (String)
- */
- public Collection getAllServices ();
-
- /**
- * Returns an id corresponding to the current view of this set of replicants.
- * @param key The replicant name
- * @return A view id (doesn't grow sequentially)
- */
- public int getReplicantsViewId(String key);
-
- /**
- * Indicates if the current node is the master replica for this given key.
- * @param key The replicant name
- * @return True if this node is the master
- */
- public boolean isMasterReplica (String key);
-
-}
Copied: projects/cluster/ha-server-api/tags/1.0.0.BETA3/src/main/java/org/jboss/ha/framework/interfaces/DistributedReplicantManager.java (from rev 69276, projects/cluster/ha-server-api/trunk/src/main/java/org/jboss/ha/framework/interfaces/DistributedReplicantManager.java)
===================================================================
--- projects/cluster/ha-server-api/tags/1.0.0.BETA3/src/main/java/org/jboss/ha/framework/interfaces/DistributedReplicantManager.java (rev 0)
+++ projects/cluster/ha-server-api/tags/1.0.0.BETA3/src/main/java/org/jboss/ha/framework/interfaces/DistributedReplicantManager.java 2008-01-24 14:28:09 UTC (rev 69289)
@@ -0,0 +1,161 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt 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.jboss.ha.framework.interfaces;
+
+import org.jboss.ha.framework.interfaces.DistributedReplicantManager.ReplicantListener;
+import java.io.Serializable;
+import java.util.List;
+import java.util.Collection;
+
+/**
+ *
+ * DistributedReplicantManager is a service on top of HAPartition that provides a
+ * cluster-wide distributed state which is node-specific. The DistributedReplicantManager (DRM)
+ * service provides a <String key, Serializable replicant> tuple map. Each node in the cluster
+ * stores its own data for a given key. This data is replicated so that reading values for a key
+ * is always performed locally.
+ *
+ * @author <a href="mailto:bill at burkecentral.com">Bill Burke</a>.
+ * @author <a href="mailto:sacha.labourey at cogito-info.ch">Sacha Labourey</a>.
+ * @author <a href="mailto:galder.zamarreno at jboss.com">Galder Zamarreno</a>
+ * @version $Revision$
+ *
+ * <p><b>Revisions:</b><br>
+ * <p><b>2001/10/31: marcf</b>
+ * <ol>
+ * <li>DRM is no longer remote
+ * </ol>
+ * <p><b>2002/08/23: Sacha Labourey</b>
+ * <ol>
+ * <li>added isMasterReplica
+ * </ol>
+ */
+public interface DistributedReplicantManager
+{
+ /**
+ * When a particular key in the DistributedReplicantManager table gets modified, all listeners
+ * will be notified of replicant changes for that key.
+ */
+ public interface ReplicantListener
+ {
+ /**
+ * Callback called when the content/list of replicant for a given replicant key has changed
+ * @param key The name of the key of the replicant that has changed
+ * @param newReplicants The list of new replicants for the give replicant key.
+ * This list will be in a consistent order on all
+ * cluster nodes on which the current viewId is
+ * in effect
+ * @param newReplicantsViewId The new replicant view id corresponding to this change
+ */
+ public void replicantsChanged(String key, List newReplicants, int newReplicantsViewId);
+ }
+
+ /**
+ * Subscribe a new listener {@link ReplicantListener} for replicant changes
+ * @param key Name of the replicant, must be identical cluster-wide for all identical replicants
+ * @param subscriber The subscribing {@link ReplicantListener}
+ */
+ public void registerListener(String key, ReplicantListener subscriber);
+ /**
+ * Unsubscribe a listener {@link ReplicantListener} that had subscribed for replicant changes
+ * @param key Name of the replicant, must be identical cluster-wide for all identical replicants
+ * @param subscriber The unsubscribing {@link ReplicantListener}
+ */
+ public void unregisterListener(String key, ReplicantListener subscriber);
+
+ // State binding methods
+ //
+
+ /**
+ * Add a replicant, it will be attached to this cluster node
+ * @param key Replicant name. All replicas around the cluster must use the same key name.
+ * @param replicant Local data of the replicant, that is, any serializable data
+ * @throws Exception Thrown if a cluster communication problem occurs
+ */
+ public void add(String key, Serializable replicant) throws Exception;
+
+ /**
+ * Remove the entire key from the ReplicationService
+ * @param key Name of the replicant
+ * @throws Exception Thrown if a cluster communication problem occurs
+ */
+ public void remove(String key) throws Exception;
+
+ /**
+ * Lookup the replicant attached to this cluster node
+ * @param key The name of the replicant
+ * @return The local replicant for the given key name
+ */
+ public Serializable lookupLocalReplicant(String key);
+
+ /**
+ * Return a list of all replicants.
+ * @param key The replicant name
+ * @return A list of serialized replicants available around the cluster
+ * for the given key. This list will be in the same order in all
+ * nodes in the cluster.
+ */
+ public List lookupReplicants(String key);
+
+ /**
+ * Return a list of all replicants node names.
+ * @param key The replicant name
+ * @return A list of the node names of cluster nodes that have made available
+ * a replicant for the given key. This list will be in the same
+ * order in all nodes in the cluster.
+ * @deprecated Replaced by {@link #lookupReplicantsNodes(String)} that
+ * returns a List of ClusterNode. Call
+ * {@link ClusterNode.#getName()} on List entries to get same
+ * behaivour.
+ */
+ @Deprecated public List lookupReplicantsNodeNames(String key);
+
+ /**
+ * Return a list of all replicants nodes.
+ * @param key The replicant name
+ * @return A list of the ClusterNode instances that have made available
+ * a replicant for the given key. This list will be in the same
+ * order in all nodes in the cluster.
+ */
+ public List<ClusterNode> lookupReplicantsNodes(String key);
+
+ /**
+ * Return a list of all services that have at least one replicant.
+ * @return A collection of service names (String)
+ */
+ public Collection getAllServices ();
+
+ /**
+ * Returns an id corresponding to the current view of this set of replicants.
+ * @param key The replicant name
+ * @return A view id (doesn't grow sequentially)
+ */
+ public int getReplicantsViewId(String key);
+
+ /**
+ * Indicates if the current node is the master replica for this given key.
+ * @param key The replicant name
+ * @return True if this node is the master
+ */
+ public boolean isMasterReplica (String key);
+
+}
More information about the jboss-cvs-commits
mailing list