73
72
import com.google.common.base.Predicate;
74
73
import com.google.common.collect.Iterables;
75
74
import com.google.common.collect.Lists;
76
import edu.ucsb.eucalyptus.cloud.cluster.QueuedEvent;
77
import edu.ucsb.eucalyptus.cloud.cluster.QueuedEventCallback;
78
import edu.ucsb.eucalyptus.msgs.EucalyptusMessage;
79
75
import edu.ucsb.eucalyptus.msgs.RegisterClusterType;
81
77
public class Clusters extends AbstractNamedRegistry<Cluster> {
111
107
hostOrdered.add( c.getConfiguration( ).getHostName( ) );
112
108
return Lists.newArrayList( hostOrdered );
115
@SuppressWarnings( "unchecked" )
116
public static void sendClusterEvent( String clusterName, QueuedEvent event ) throws NoSuchElementException {
117
Cluster cluster = Clusters.getInstance( ).lookup( clusterName );
118
Clusters.sendClusterEvent( cluster, event );
121
@SuppressWarnings( "unchecked" )
122
public static void sendClusterEvent( Cluster cluster, QueuedEvent event ) throws NoSuchElementException {
123
event.getCallback( ).fire( cluster.getHostName( ), cluster.getPort( ), cluster.getServicePath( ), event.getEvent( ) );
126
@SuppressWarnings( "unchecked" )
127
public static void dispatchClusterEvent( Cluster cluster, QueuedEventCallback callback, EucalyptusMessage msg ) throws NoSuchElementException {
128
cluster.getMessageQueue( ).enqueue( QueuedEvent.make( callback, msg ) );
131
@SuppressWarnings( "unchecked" )
132
public static void sendClusterEvent( Cluster cluster, QueuedEventCallback callback ) throws NoSuchElementException {
133
Clusters.sendClusterEvent( cluster, QueuedEvent.make( callback, callback.getRequest( ) ) );
136
@SuppressWarnings( "unchecked" )
137
public static void sendClusterEvent( String clusterName, QueuedEventCallback callback ) throws NoSuchElementException {
138
Cluster cluster = Clusters.getInstance( ).lookup( clusterName );
139
Clusters.sendClusterEvent( cluster, QueuedEvent.make( callback, callback.getRequest( ) ) );
142
@SuppressWarnings( "unchecked" )
143
public static void dispatchClusterEvent( Cluster cluster, QueuedEventCallback callback ) throws NoSuchElementException {
144
cluster.getMessageQueue( ).enqueue( QueuedEvent.make( callback, callback.getRequest( ) ) );
147
@SuppressWarnings( "unchecked" )
148
public static void dispatchClusterEvent( String clusterName, QueuedEventCallback callback ) throws NoSuchElementException {
149
Cluster cluster = Clusters.getInstance( ).lookup( clusterName );
150
Clusters.dispatchClusterEvent( cluster, callback );
153
@SuppressWarnings( "unchecked" )
154
public static void dispatchClusterEvent( String clusterName, QueuedEventCallback callback, EucalyptusMessage msg ) throws NoSuchElementException {
155
Cluster cluster = Clusters.getInstance( ).lookup( clusterName );
156
Clusters.dispatchClusterEvent( cluster, callback, msg );