How about following change? s/ClusteringFault/ClusteringException
On Sun, Jan 19, 2014 at 11:40 AM, Kishanthan Thangarajah < [email protected]> wrote: > Clustering SPI provides the ability to plug-in different clustering > implementation to carbon. By default, carbon will ship hazel-cast based > clustering impl. There will be a separate file (cluster.xml) for cluster > configuration. > > The SPI will contain the following main interfaces. > > *ClusteringAgent* - is responsible for initializing and managing this > node in the cluster. > *MembershipScheme* - a representation of a membership scheme such as > "multicast" or "well-known address (wka) used in the cluster. > > A high-level view can be as follows > > [image: Inline image 1] > > When the cluster agent is successfully initialized, it will also register > the Cluster Service (being discussed at "[C5] Clustering API"). The > Cluster Service will use the clustering agent underneath at implementation > level for its required operations. Based on previous experiences, we have > defined the following methods for clustering agent and membership scheme > for now. Based on the final outcome of this discussion, they may get > changed. > > *ClusteringAgent* > > /** > * Initialize the agent which will initialize this node, and join the > cluster > */ > void *init*() throws ClusteringFault; > > /** > * Shutdown the agent which will remove this node from cluster > */ > void *shutdown*() throws ClusteringFault; > > /** > * Set carbon configuration context to this agent to be used in the > clustering impl > */ > void *setConfigurationContext*(CarbonConfigurationContext > configurationContext); > > /** > * Get the list of static members > */ > List<ClusterMember> *getStaticMembers*(); > > /** > * Get the number of members alive. > */ > int *getAliveMemberCount*(); > > /** > * Send a message to all members in the cluster > */ > List<ClusteringCommand> *sendMessage*(ClusterMessage msg, boolean > isSync) > throws ClusteringFault; > > /** > * Send a message to a set of specific members in the cluster > */ > List<ClusteringCommand> *sendMessage*(ClusterMessage msg, > List<ClusterMember> members, boolean isSync) > throws ClusteringFault; > > > *MembershipScheme* > > void *init*() throws ClusteringFault; > > void *joinGroup*() throws ClusteringFault; > > > Thoughts? > > Thanks, > Kishanthan. > -- > *Kishanthan Thangarajah* > Senior Software Engineer, > Platform Technologies Team, > WSO2, Inc. > lean.enterprise.middleware > > Mobile - +94773426635 > Blog - *http://kishanthan.wordpress.com <http://kishanthan.wordpress.com>* > Twitter - *http://twitter.com/kishanthan <http://twitter.com/kishanthan>* > > _______________________________________________ > Architecture mailing list > [email protected] > https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture > > -- Isuru Perera Senior Software Engineer | WSO2, Inc. | http://wso2.com/ Lean . Enterprise . Middleware about.me/chrishantha
<<C5 - Clustering.png>>
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
