List of usage examples for java.util.concurrent.atomic AtomicInteger incrementAndGet
public final int incrementAndGet()
From source file:org.apache.servicecomb.config.archaius.sources.TestConfigCenterConfigurationSource.java
@Test public void destroy_inited() throws IllegalAccessException { AtomicInteger count = new AtomicInteger(); ConfigCenterClient configCenterClient = new MockUp<ConfigCenterClient>() { @Mock//from w w w . j a v a 2 s . c o m void destroy() { count.incrementAndGet(); } }.getMockInstance(); ConfigCenterConfigurationSourceImpl configCenterSource = new ConfigCenterConfigurationSourceImpl(); FieldUtils.writeDeclaredField(configCenterSource, "configCenterClient", configCenterClient, true); configCenterSource.destroy(); Assert.assertEquals(1, count.get()); }
From source file:org.jtheque.core.LifeCycleTest.java
@Test @DirtiesContext//from ww w . ja v a2 s. c om public void titleListener() { final AtomicInteger titleCounter = new AtomicInteger(0); lifeCycle.addTitleListener(new TitleListener() { @Override public void titleUpdated(String title) { titleCounter.incrementAndGet(); } }); lifeCycle.refreshTitle(); assertEquals(1, titleCounter.intValue()); }
From source file:org.jtheque.errors.ErrorServiceTest.java
@Test @DirtiesContext/*from w w w .j ava 2s . co m*/ public void listenerRemoved() { final AtomicInteger integer = new AtomicInteger(0); ErrorListener listener = new ErrorListener() { @Override public void errorOccurred(Error occuredError) { integer.incrementAndGet(); } }; errorService.addErrorListener(listener); errorService.addError(Errors.newError("Test1")); errorService.removeErrorListener(listener); errorService.addError(Errors.newError("Test2")); assertEquals(1, integer.intValue()); }
From source file:org.jtheque.errors.ErrorServiceTest.java
@Test @DirtiesContext//w w w .java 2 s.c o m public void listenerCalled() { final Error error = Errors.newError("Test"); final AtomicInteger integer = new AtomicInteger(0); errorService.addErrorListener(new ErrorListener() { @Override public void errorOccurred(Error occuredError) { integer.incrementAndGet(); assertEquals(error, occuredError); } }); errorService.addError(error); assertEquals(1, integer.intValue()); }
From source file:com.ewcms.web.pubsub.ProgressSender.java
private void constructTreeGridRows(StringBuilder builder, AtomicInteger count, int partenId, Taskable task) { if (task.getProgress() == -1) { return;//from w w w. ja v a 2 s. com } if (count.get() != 0) { builder.append(","); } int id = count.incrementAndGet(); builder.append("{"); builder.append("\"id\":").append(id); builder.append(",\"taskId\":\"").append(task.getId()).append("\""); builder.append(",\"name\":\"").append(task.getDescription()).append("\""); builder.append(",\"username\":\"").append(task.getUsername()).append("\""); builder.append(",\"progress\":").append(task.getProgress()); if (partenId != -1) { builder.append(",\"_parentId\":").append(partenId); } builder.append("}"); for (Taskable child : task.getDependenceTasks()) { constructTreeGridRows(builder, count, id, child); } }
From source file:com.xiaomi.linden.file.TestFileChangeWatcher.java
@Test public void testFileChangeWatcher() throws IOException, InterruptedException { final AtomicInteger events = new AtomicInteger(0); final Function<String, Object> callback = new Function<String, Object>() { @Override/* w ww .j av a 2 s . co m*/ public String apply(String absolutePath) { events.incrementAndGet(); return null; } }; File dir = new File("tmp"); if (!dir.exists()) { dir.mkdir(); } File file = new File("tmp/test.txt"); file.createNewFile(); fileChangeWatcher = new FileChangeWatcher(file.getAbsolutePath(), callback, 10); fileChangeWatcher.start(); directoryChangeWatcher = new DirectoryChangeWatcher(dir.getAbsolutePath(), callback, 10); directoryChangeWatcher.start(); Files.write("Hello", file, Charsets.UTF_8); Thread.sleep(10 * 1000); Assert.assertEquals(2, events.get()); FileUtils.deleteQuietly(file); FileUtils.deleteDirectory(dir); }
From source file:org.apache.hadoop.mp.util.Machine.java
/** Compute sigma */ private static <C extends MachineComputable<C, R>, R extends MachineComputable.Result<R>> void compute( final C sigma, final int nThreads, final TaskInputOutputContext<?, ?, NullWritable, R> context) throws IOException, InterruptedException { final JavaUtil.Timer timer = new JavaUtil.Timer(true, true); final String s = "sigma = " + sigma; timer.tick(s);/*from w w w . j a v a 2 s.c o m*/ context.setStatus(s); final List<C> parts = sigma.partition(nThreads); final List<Runner<C, R>> runners = new ArrayList<Runner<C, R>>(parts.size()); final AtomicInteger count = new AtomicInteger(0); final int base = nThreads / parts.size(); final int remainder = nThreads % parts.size(); //compute each part for (int i = 0; i < parts.size(); i++) { final int t = base + (i < remainder ? 1 : 0); final Runner<C, R> r = new Runner<C, R>(parts.get(i)) { @Override public void run() { timer.tick("START (thread=" + t + ")" + part); result = part.compute(t, timer); synchronized (count) { final String s = "DONE(" + count.incrementAndGet() + "/" + parts.size() + ") " + part; timer.tick(s); context.setStatus(s); } } }; runners.add(r); r.start(); } //wait for each runner for (Runner<C, R> r : runners) r.join(); final List<R> results = new ArrayList<R>(); for (Runner<C, R> r : runners) { if (r.result != null) results.add(r.result); else timer.tick("The result is null for " + r.part); } if (results.size() < parts.size()) timer.tick("results.size() = " + results.size() + " < parts.size() = " + parts.size()); //combine results final List<R> combined = JavaUtil.combine(results); timer.tick("combined.size() = " + combined.size()); for (int i = 0; i < combined.size(); i++) { final R r = combined.get(i); timer.tick(i + ") " + r); context.write(NullWritable.get(), r); } Print.printMemoryInfo(); }
From source file:io.bifroest.names.EnumerateDrainByTypeScheme.java
private int getNextDrainIndex(String type) { AtomicInteger currentCount; if (typeToDrainsNamedSoFar.containsKey(type)) { currentCount = typeToDrainsNamedSoFar.get(type); } else {//w w w. ja v a2 s. c o m currentCount = new AtomicInteger(0); typeToDrainsNamedSoFar.put(type, currentCount); } return currentCount.incrementAndGet(); }
From source file:com.insys.cfclient.nozzle.InfluxDBSender.java
@Async public void sendBatch(List<String> messages) { log.debug("ENTER sendBatch"); httpClient.setErrorHandler(new ResponseErrorHandler() { @Override//from w w w .ja v a 2s. c om public boolean hasError(ClientHttpResponse clientHttpResponse) throws IOException { return clientHttpResponse.getRawStatusCode() > 399; } @Override public void handleError(ClientHttpResponse clientHttpResponse) throws IOException { } }); RetryTemplate retryable = new RetryTemplate(); retryable.setBackOffPolicy(getBackOffPolicy()); retryable.setRetryPolicy(new SimpleRetryPolicy(properties.getMaxRetries(), Collections.singletonMap(ResourceAccessException.class, true))); final AtomicInteger counter = new AtomicInteger(0); retryable.execute(retryContext -> { int count = counter.incrementAndGet(); log.trace("Attempt {} to deliver this batch", count); final StringBuilder builder = new StringBuilder(); messages.forEach(s -> builder.append(s).append("\n")); String body = builder.toString(); RequestEntity<String> entity = new RequestEntity<>(body, HttpMethod.POST, getUri()); ResponseEntity<String> response; response = httpClient.exchange(entity, String.class); if (response.getStatusCode() != HttpStatus.NO_CONTENT) { log.error("Failed to write logs to InfluxDB! Expected error code 204, got {}", response.getStatusCodeValue()); log.trace("Request Body: {}", body); log.trace("Response Body: {}", response.getBody()); } else { log.debug("batch sent successfully!"); } log.debug("EXIT sendBatch"); return null; }, recoveryContext -> { log.trace("Failed after {} attempts!", counter.get()); return null; }); }
From source file:org.jtheque.core.LifeCycleTest.java
@Test @DirtiesContext/* w w w .ja va 2s . c o m*/ public void functionListener() { final AtomicInteger functionCounter = new AtomicInteger(0); lifeCycle.addFunctionListener(new FunctionListener() { @Override public void functionUpdated(String function) { functionCounter.incrementAndGet(); } }); lifeCycle.setCurrentFunction("new function"); assertEquals(1, functionCounter.intValue()); }