test_class.file: bft-smart/src/test/java/bftsmart/reconfiguration/ServerViewControllerTest.java
test_class.identifier: ServerViewControllerTest
test_case.body: @Test
  	public void testEnqueueUpdate() {
  		fail("Not yet implemented");
  	}
test_case.class_method_signature: ServerViewControllerTest.testEnqueueUpdate()
test_case.full_signature: @Test public void testEnqueueUpdate()
test_case.identifier: testEnqueueUpdate
test_case.invocations: fail
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testEnqueueUpdate()
focal_class.declarator: ADD_SERVER = 0
focal_class.modifier: public static final
focal_class.original_string: public static final int ADD_SERVER = 0;
focal_class.type: int
focal_class.var_name: ADD_SERVER
focal_class.declarator: REMOVE_SERVER = 1
focal_class.modifier: public static final
focal_class.original_string: public static final int REMOVE_SERVER = 1;
focal_class.type: int
focal_class.var_name: REMOVE_SERVER
focal_class.declarator: CHANGE_F = 2
focal_class.modifier: public static final
focal_class.original_string: public static final int CHANGE_F = 2;
focal_class.type: int
focal_class.var_name: CHANGE_F
focal_class.declarator: quorumBFT
focal_class.modifier: private
focal_class.original_string: private int quorumBFT;
focal_class.type: int
focal_class.var_name: quorumBFT
focal_class.declarator: quorumCFT
focal_class.modifier: private
focal_class.original_string: private int quorumCFT;
focal_class.type: int
focal_class.var_name: quorumCFT
focal_class.declarator: otherProcesses
focal_class.modifier: private
focal_class.original_string: private int[] otherProcesses;
focal_class.type: int[]
focal_class.var_name: otherProcesses
focal_class.declarator: lastJoinStet
focal_class.modifier: private
focal_class.original_string: private int[] lastJoinStet;
focal_class.type: int[]
focal_class.var_name: lastJoinStet
focal_class.declarator: updates = new LinkedList<TOMMessage>()
focal_class.modifier: private
focal_class.original_string: private List<TOMMessage> updates = new LinkedList<TOMMessage>();
focal_class.type: List<TOMMessage>
focal_class.var_name: updates
focal_class.declarator: tomLayer
focal_class.modifier: private
focal_class.original_string: private TOMLayer tomLayer;
focal_class.type: TOMLayer
focal_class.var_name: tomLayer
focal_class.file: bft-smart/src/main/java/bftsmart/reconfiguration/ServerViewController.java
focal_class.identifier: ServerViewController
focal_class.class_method_signature: ServerViewController.ServerViewController(int procId)
focal_class.full_signature: public  ServerViewController(int procId)
focal_class.identifier: ServerViewController
focal_class.modifiers: public
focal_class.parameters: (int procId)
focal_class.signature:  ServerViewController(int procId)
focal_class.class_method_signature: ServerViewController.ServerViewController(int procId, String configHome)
focal_class.full_signature: public  ServerViewController(int procId, String configHome)
focal_class.identifier: ServerViewController
focal_class.modifiers: public
focal_class.parameters: (int procId, String configHome)
focal_class.signature:  ServerViewController(int procId, String configHome)
focal_class.class_method_signature: ServerViewController.getInitAdddresses()
focal_class.full_signature: private InetSocketAddress[] getInitAdddresses()
focal_class.identifier: getInitAdddresses
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: InetSocketAddress[]
focal_class.signature: InetSocketAddress[] getInitAdddresses()
focal_class.class_method_signature: ServerViewController.setTomLayer(TOMLayer tomLayer)
focal_class.full_signature: public void setTomLayer(TOMLayer tomLayer)
focal_class.identifier: setTomLayer
focal_class.modifiers: public
focal_class.parameters: (TOMLayer tomLayer)
focal_class.return: void
focal_class.signature: void setTomLayer(TOMLayer tomLayer)
focal_class.class_method_signature: ServerViewController.isInCurrentView()
focal_class.full_signature: public boolean isInCurrentView()
focal_class.identifier: isInCurrentView
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean isInCurrentView()
focal_class.class_method_signature: ServerViewController.getCurrentViewOtherAcceptors()
focal_class.full_signature: public int[] getCurrentViewOtherAcceptors()
focal_class.identifier: getCurrentViewOtherAcceptors
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int[]
focal_class.signature: int[] getCurrentViewOtherAcceptors()
focal_class.class_method_signature: ServerViewController.getCurrentViewAcceptors()
focal_class.full_signature: public int[] getCurrentViewAcceptors()
focal_class.identifier: getCurrentViewAcceptors
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int[]
focal_class.signature: int[] getCurrentViewAcceptors()
focal_class.class_method_signature: ServerViewController.hasUpdates()
focal_class.full_signature: public boolean hasUpdates()
focal_class.identifier: hasUpdates
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: boolean
focal_class.signature: boolean hasUpdates()
focal_class.class_method_signature: ServerViewController.enqueueUpdate(TOMMessage up)
focal_class.full_signature: public void enqueueUpdate(TOMMessage up)
focal_class.identifier: enqueueUpdate
focal_class.modifiers: public
focal_class.parameters: (TOMMessage up)
focal_class.return: void
focal_class.signature: void enqueueUpdate(TOMMessage up)
focal_class.class_method_signature: ServerViewController.executeUpdates(int cid)
focal_class.full_signature: public byte[] executeUpdates(int cid)
focal_class.identifier: executeUpdates
focal_class.modifiers: public
focal_class.parameters: (int cid)
focal_class.return: byte[]
focal_class.signature: byte[] executeUpdates(int cid)
focal_class.class_method_signature: ServerViewController.contains(int id, List<Integer> list)
focal_class.full_signature: private boolean contains(int id, List<Integer> list)
focal_class.identifier: contains
focal_class.modifiers: private
focal_class.parameters: (int id, List<Integer> list)
focal_class.return: boolean
focal_class.signature: boolean contains(int id, List<Integer> list)
focal_class.class_method_signature: ServerViewController.reconfigure(List<String> jSetInfo, List<Integer> jSet, List<Integer> rSet, int f, int cid)
focal_class.full_signature: private byte[] reconfigure(List<String> jSetInfo, List<Integer> jSet, List<Integer> rSet, int f, int cid)
focal_class.identifier: reconfigure
focal_class.modifiers: private
focal_class.parameters: (List<String> jSetInfo, List<Integer> jSet, List<Integer> rSet, int f, int cid)
focal_class.return: byte[]
focal_class.signature: byte[] reconfigure(List<String> jSetInfo, List<Integer> jSet, List<Integer> rSet, int f, int cid)
focal_class.class_method_signature: ServerViewController.clearUpdates()
focal_class.full_signature: public TOMMessage[] clearUpdates()
focal_class.identifier: clearUpdates
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: TOMMessage[]
focal_class.signature: TOMMessage[] clearUpdates()
focal_class.class_method_signature: ServerViewController.isInLastJoinSet(int id)
focal_class.full_signature: public boolean isInLastJoinSet(int id)
focal_class.identifier: isInLastJoinSet
focal_class.modifiers: public
focal_class.parameters: (int id)
focal_class.return: boolean
focal_class.signature: boolean isInLastJoinSet(int id)
focal_class.class_method_signature: ServerViewController.processJoinResult(ReconfigureReply r)
focal_class.full_signature: public void processJoinResult(ReconfigureReply r)
focal_class.identifier: processJoinResult
focal_class.modifiers: public
focal_class.parameters: (ReconfigureReply r)
focal_class.return: void
focal_class.signature: void processJoinResult(ReconfigureReply r)
focal_class.class_method_signature: ServerViewController.reconfigureTo(View newView)
focal_class.full_signature: @Override public final void reconfigureTo(View newView)
focal_class.identifier: reconfigureTo
focal_class.modifiers: @Override public final
focal_class.parameters: (View newView)
focal_class.return: void
focal_class.signature: void reconfigureTo(View newView)
focal_class.class_method_signature: ServerViewController.getQuorum()
focal_class.full_signature: public int getQuorum()
focal_class.identifier: getQuorum
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getQuorum()
focal_class.superclass: extends ViewController
focal_method.body: public void enqueueUpdate(TOMMessage up) {
  		ReconfigureRequest request = (ReconfigureRequest) TOMUtil.getObject(up.getContent());
  		if (TOMUtil.verifySignature(getStaticConf().getPublicKey(request.getSender()), request.toString().getBytes(),
  				request.getSignature())) {
  			if (request.getSender() == getStaticConf().getTTPId()) {
  				this.updates.add(up);
  			} else {
  				boolean add = true;
  				Iterator<Integer> it = request.getProperties().keySet().iterator();
  				while (it.hasNext()) {
  					int key = it.next();
  					String value = request.getProperties().get(key);
  					if (key == ADD_SERVER) {
  						StringTokenizer str = new StringTokenizer(value, ":");
  						if (str.countTokens() > 2) {
  							int id = Integer.parseInt(str.nextToken());
  							if (id != request.getSender()) {
  								add = false;
  							}
  						} else {
  							add = false;
  						}
  					} else if (key == REMOVE_SERVER) {
  						if (isCurrentViewMember(Integer.parseInt(value))) {
  							if (Integer.parseInt(value) != request.getSender()) {
  								add = false;
  							}
  						} else {
  							add = false;
  						}
  					} else if (key == CHANGE_F) {
  						add = false;
  					}
  				}
  				if (add) {
  					this.updates.add(up);
  				}
  			}
  		}
  	}
focal_method.class_method_signature: ServerViewController.enqueueUpdate(TOMMessage up)
focal_method.full_signature: public void enqueueUpdate(TOMMessage up)
focal_method.identifier: enqueueUpdate
focal_method.invocations: getObject getContent verifySignature getPublicKey getStaticConf getSender getBytes toString getSignature getSender getTTPId getStaticConf add iterator keySet getProperties hasNext next get getProperties countTokens parseInt nextToken getSender isCurrentViewMember parseInt parseInt getSender add
focal_method.modifiers: public
focal_method.parameters: (TOMMessage up)
focal_method.return: void
focal_method.signature: void enqueueUpdate(TOMMessage up)