- Timestamp:
- 10/15/13 13:21:33 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/supervisor/src/main/java/omq/supervisor/SupervisorImpl.java
r94 r103 10 10 11 11 import org.apache.log4j.Logger; 12 13 import com.rabbitmq.client.AMQP.Queue.DeclareOk;14 import com.rabbitmq.client.Channel;15 12 16 13 public class SupervisorImpl extends RemoteObject implements Supervisor { … … 41 38 42 39 @Override 43 public void spawnObject(OmqSettings settings ) throws Exception {40 public void spawnObject(OmqSettings settings, int numObjects) throws Exception { 44 41 45 42 String reference = settings.getReference(); … … 50 47 51 48 int minObjects = settings.getMinNumberObjects(); 52 53 Channel channel = getBroker().getNewChannel();54 55 int numObjects = 0;56 try {57 DeclareOk dok = channel.queueDeclarePassive(reference);58 numObjects = dok.getConsumerCount();59 channel.close();60 } catch (Exception io) {61 // The queue doesn't exist & the channel has been closed62 }63 49 64 50 for (RemoteBroker broker : brokers) { … … 75 61 76 62 @Override 77 public void unbindObject(OmqSettings settings ) throws Exception {63 public void unbindObject(OmqSettings settings, int numObjects) throws Exception { 78 64 String reference = settings.getReference(); 79 65 80 66 int minObjects = settings.getMinNumberObjects(); 81 67 82 Channel channel = getBroker().getNewChannel(); 68 for (RemoteBroker broker : brokers) { 69 if (broker.hasObject(reference) && (numObjects - 1) >= minObjects) { 70 broker.deleteObject(reference); 71 break; 72 } 73 } 83 74 84 int numObjects = 0;85 try {86 DeclareOk dok = channel.queueDeclarePassive(reference);87 numObjects = dok.getConsumerCount();88 channel.close();89 90 for (RemoteBroker broker : brokers) {91 if (broker.hasObject(reference) && (numObjects - 1) >= minObjects) {92 broker.deleteObject(reference);93 break;94 }95 }96 97 } catch (Exception io) {98 // The queue doesn't exist & the channel has been closed99 }100 75 } 101 76
Note: See TracChangeset
for help on using the changeset viewer.