/** toString returns current value. */ public void testToString() { AtomicInteger ai = new AtomicInteger(); assertEquals("0", ai.toString()); for (int x : VALUES) { ai.set(x); assertEquals(Integer.toString(x), ai.toString()); } }
private String bindingClassName( ExecutableElement providerMethod, Map<ExecutableElement, String> methodToClassName, Map<String, AtomicInteger> methodNameToNextId) { String className = methodToClassName.get(providerMethod); if (className != null) return className; String methodName = providerMethod.getSimpleName().toString(); String suffix = ""; AtomicInteger id = methodNameToNextId.get(methodName); if (id == null) { methodNameToNextId.put(methodName, new AtomicInteger(2)); } else { suffix = id.toString(); id.incrementAndGet(); } String uppercaseMethodName = Character.toUpperCase(methodName.charAt(0)) + methodName.substring(1); className = uppercaseMethodName + "ProvidesAdapter" + suffix; methodToClassName.put(providerMethod, className); return className; }
/** Método run da classe, trata as mensagens recebidas por um cliente. */ @Override public void run() { try { BufferedReader inFromClient = new BufferedReader(new InputStreamReader(socket.getInputStream())); String line; while ((line = inFromClient.readLine()) != null) { /* Quebra a string em tokens, separando o tipo da mensagem, o remetente, o timestamp e o id da mensagem */ StringTokenizer st = new StringTokenizer(line, "@"); String messageType = st.nextToken(); String sender = st.nextToken(); int timestampReceived = Integer.parseInt(st.nextToken()); String message_id = st.nextToken(); System.out.print("+ Mensagem recebida: " + messageType); System.out.print(". id: " + message_id); System.out.print(". remetente: " + sender); System.out.print(". timestamp: " + timestampReceived); System.out.println("."); String key = Integer.toString(timestampReceived) + sender; if (messageType.equals(eleicaoMessage)) { if (Integer.parseInt(message_id) < Integer.parseInt(pid) && message_id == "1") { Socket clientSocketA = new Socket("localhost", 25001); BufferedWriter outToProcessA = new BufferedWriter(new OutputStreamWriter(clientSocketA.getOutputStream())); Thread.sleep(2000); // String message_id; String message; message = "OK" + "@" + pid + "@" + timestamp.toString() + "@" + message_id; /* Incremento do timestamp. */ timestamp.incrementAndGet(); outToProcessA.write(message); outToProcessA.newLine(); outToProcessA.flush(); coordenador = "1"; } else { if (Integer.parseInt(message_id) < Integer.parseInt(pid) && message_id == "2") { Socket clientSocketB = new Socket("localhost", 25002); BufferedWriter outToProcessB = new BufferedWriter(new OutputStreamWriter(clientSocketB.getOutputStream())); Thread.sleep(2000); // String message_id; String message; message = "OK" + "@" + pid + "@" + timestamp.toString() + "@" + message_id; /* Incremento do timestamp. */ timestamp.incrementAndGet(); outToProcessB.write(message); outToProcessB.newLine(); outToProcessB.flush(); coordenador = "2"; } } } else { // atualiza o coordenador com que vem em OK if (messageType.equals("COORDENADOR")) { coordenador = sender; } /* ACK recebido. O número de ACKs da mensagem deve ser incrementado. */ /* Caso o número de ACKs tenha chegado em 2, e a mensagem está no início da fila, */ /* então a mensagem deve ser entregue à aplicação. */ /* Integer numberOfAcks; String firstKey = messageQueue.firstKey(); for ( Map.Entry<String, String> entry : messageQueue.entrySet() ) { if ( entry.getValue().equals(message_id) ) { key = entry.getKey(); break; } } if ( (numberOfAcks = ackQueue.get(key)) != null ) { /* Incremente o número de ACKs recebidos. ackQueue.replace(key, numberOfAcks, ++numberOfAcks); if ( numberOfAcks == 2 ) { /* Possui dois ACKs. Necessário verificar se está no início da fila. if ( firstKey.equals(key) ) { /* Retire da fila e entregue para a aplicação. Map.Entry<String, String> m = messageQueue.pollFirstEntry(); ackQueue.pollFirstEntry(); System.out.print("\t - Mensagem entregue para a aplicacao."); System.out.println(" remetente: " + m.getKey() + ". id: " + m.getValue()); } } } */ } } } catch (IOException e) { // e.printStackTrace(); } catch (InterruptedException ex) { Logger.getLogger(socket2.class.getName()).log(Level.SEVERE, null, ex); } }
public Thread newThread(Runnable runnable) { Log.e(TAG, "New a Thread for ImageLoadTask:" + mCount.toString()); return new Thread(runnable, "ImageLoadTask #" + mCount.getAndIncrement()); }
private void addCSeq(DefaultFullHttpRequest req) { req.headers().add("CSeq", cseq.toString()); cseq.incrementAndGet(); }
@Override public String toString() { return super.toString() + "[References: " + references.toString() + "]"; }