List of usage examples for java.util.concurrent.atomic AtomicReference set
public final void set(V newValue)
From source file:com.github.jdye64.processors.provenance.ProvenanceEventsToPhoenix.java
@Override public void onTrigger(ProcessContext context, ProcessSession session) throws ProcessException { final FlowFile flowFile = session.get(); if (flowFile == null) { return;/* w w w .jav a2s . co m*/ } String tableName = context.getProperty(PHOENIX_TABLE_NAME).evaluateAttributeExpressions(flowFile) .getValue(); StringBuffer buffer = new StringBuffer(); buffer.append(PREPEND_UPSERT); buffer.append(tableName); buffer.append(PROV_UPSERT_PREDICATES); buffer.append(PROV_PREP_VALUES); try { AtomicReference<JSONArray> provEvents = new AtomicReference<>(); session.read(flowFile, new InputStreamCallback() { @Override public void process(InputStream in) throws IOException { StringWriter writer = new StringWriter(); IOUtils.copy(in, writer, "UTF-8"); provEvents.set(new JSONArray(writer.toString())); } }); JSONArray events = provEvents.get(); for (int i = 0; i < events.length(); i++) { JSONObject obj = events.getJSONObject(i); Map<String, String> attributes = generateAttributes(obj, tableName); FlowFile ff = session.write(session.clone(flowFile), new OutputStreamCallback() { @Override public void process(OutputStream out) throws IOException { out.write(buffer.toString().getBytes()); } }); ff = session.putAllAttributes(ff, attributes); session.transfer(ff, REL_SUCCESS); } session.remove(flowFile); } catch (Exception ex) { getLogger().error("Error converting provenance event into Phoenix prepared statement {}", new Object[] { ex.getMessage() }, ex); session.transfer(flowFile, REL_FAILURE); } }
From source file:com.dataflowdeveloper.processors.process.NLPProcessor.java
@Override public void onTrigger(final ProcessContext context, final ProcessSession session) throws ProcessException { FlowFile flowFile = session.get();//from w w w . jav a2 s. co m if (flowFile == null) { flowFile = session.create(); } try { flowFile.getAttributes(); service = new OpenNLPService(); String sentence = flowFile.getAttribute(ATTRIBUTE_INPUT_NAME); String sentence2 = context.getProperty(ATTRIBUTE_INPUT_NAME).evaluateAttributeExpressions(flowFile) .getValue(); if (sentence == null) { sentence = sentence2; } try { // if they pass in a sentence do that instead of flowfile if (sentence == null) { final AtomicReference<String> contentsRef = new AtomicReference<>(null); session.read(flowFile, new InputStreamCallback() { @Override public void process(final InputStream input) throws IOException { final String contents = IOUtils.toString(input, "UTF-8"); contentsRef.set(contents); } }); // use this as our text if (contentsRef.get() != null) { sentence = contentsRef.get(); } } List<PersonName> people = service.getPeople( context.getProperty(EXTRA_RESOURCE).evaluateAttributeExpressions(flowFile).getValue(), sentence); int count = 1; for (PersonName personName : people) { flowFile = session.putAttribute(flowFile, "nlp_name_" + count, personName.getName()); count++; } List<String> dates = service.getDates( context.getProperty(EXTRA_RESOURCE).evaluateAttributeExpressions(flowFile).getValue(), sentence); count = 1; for (String aDate : dates) { flowFile = session.putAttribute(flowFile, "nlp_date_" + count, aDate); count++; } List<Location> locations = service.getLocations( context.getProperty(EXTRA_RESOURCE).evaluateAttributeExpressions(flowFile).getValue(), sentence); count = 1; for (Location location : locations) { flowFile = session.putAttribute(flowFile, "nlp_location_" + count, location.getLocation()); count++; } } catch (Exception e) { throw new ProcessException(e); } session.transfer(flowFile, REL_SUCCESS); session.commit(); } catch (final Throwable t) { getLogger().error("Unable to process NLP Processor file " + t.getLocalizedMessage()); getLogger().error("{} failed to process due to {}; rolling back session", new Object[] { this, t }); throw t; } }
From source file:com.nesscomputing.httpserver.jetty.TestClasspathResourceHandler.java
@Test public void testIfModified() throws Exception { final AtomicReference<String> holder = new AtomicReference<String>(null); final HttpClientResponseHandler<String> responseHandler = new ContentResponseHandler<String>( new StringContentConverter() { @Override/*from ww w .jav a2 s .co m*/ public String convert(final HttpClientResponse response, final InputStream inputStream) throws IOException { holder.set(response.getHeader("Last-Modified")); return super.convert(response, inputStream); } }); final String uri = baseUri + "/simple-content.txt"; final String content = httpClient.get(uri, responseHandler).perform(); Assert.assertNotNull(holder.get()); Assert.assertEquals("this is simple content for a simple test\n", content); final HttpClientResponseHandler<String> responseHandler2 = new ContentResponseHandler<String>( new StringContentConverter() { @Override public String convert(final HttpClientResponse response, final InputStream inputStream) throws IOException { Assert.assertEquals(304, response.getStatusCode()); return null; } }); final String content2 = httpClient.get(uri, responseHandler2).addHeader("If-Modified-Since", holder.get()) .perform(); Assert.assertNull(content2); // "Time zone names ('z') cannot be parsed." so we hack it by hand, assuming GMT >:( final DateTimeFormatter httpFormat = DateTimeFormat.forPattern("EEE, dd MMM YYYY HH:mm:ss"); final long newModified = httpFormat.parseMillis(StringUtils.removeEnd(holder.get(), " GMT")) - 600000; httpClient.get(uri, Valid2xxContentConverter.DEFAULT_FAILING_RESPONSE_HANDLER) .addHeader("If-Modified-Since", httpFormat.print(newModified) + " GMT").perform(); }
From source file:org.elasticsearch.xpack.test.rest.XPackRestIT.java
/** * Executes an API call using the admin context, waiting for it to succeed. *//*from w w w . j a v a 2 s . c om*/ private void awaitCallApi(String apiName, Map<String, String> params, List<Map<String, Object>> bodies, CheckedFunction<ClientYamlTestResponse, Boolean, IOException> success, Supplier<String> error) throws Exception { AtomicReference<IOException> exceptionHolder = new AtomicReference<>(); awaitBusy(() -> { try { ClientYamlTestResponse response = callApi(apiName, params, bodies, getApiCallHeaders()); if (response.getStatusCode() == HttpStatus.SC_OK) { exceptionHolder.set(null); return success.apply(response); } return false; } catch (IOException e) { exceptionHolder.set(e); } return false; }); IOException exception = exceptionHolder.get(); if (exception != null) { throw new IllegalStateException(error.get(), exception); } }
From source file:interactivespaces.util.web.HttpClientHttpContentCopierTest.java
/** * Test a file upload from an input stream. *//*from w w w . java 2 s .c o m*/ @Test public void testFileUploadInputStream() throws Exception { final File destination = getTempFile(); InputStream source = new ByteArrayInputStream(TEST_CONTENT.getBytes()); final AtomicReference<Map<String, String>> receivedParameters = new AtomicReference<Map<String, String>>(); final CountDownLatch latch = new CountDownLatch(1); webServer.setHttpFileUploadListener(new HttpFileUploadListener() { @Override public void handleHttpFileUpload(HttpFileUpload fileUpload) { fileUpload.moveTo(destination); receivedParameters.set(fileUpload.getParameters()); latch.countDown(); } }); String sourceParameterName = "myfile"; Map<String, String> expectedParameters = Maps.newHashMap(); expectedParameters.put("foo", "bar"); expectedParameters.put("bletch", "spam"); copier.copyTo(getUrlPrefix(), source, "foo.txt", sourceParameterName, expectedParameters); Assert.assertTrue(latch.await(10, TimeUnit.SECONDS)); Assert.assertEquals(TEST_CONTENT, Files.readFile(destination).trim()); Assert.assertEquals(expectedParameters, receivedParameters.get()); }
From source file:org.echocat.jomon.maven.boot.ArtifactFactory.java
protected MavenCli createCli(final AtomicReference<PlexusContainer> containerReference, final AtomicReference<DefaultMaven> oldMaven, final Maven maven) { return new MavenCli() { @Override/*from w w w.ja v a 2 s. c o m*/ protected void customizeContainer(PlexusContainer container) { try { oldMaven.set((DefaultMaven) container.lookup(Maven.class)); } catch (final ComponentLookupException e) { throw new RuntimeException(e); } container.addComponent(maven, Maven.class, ""); containerReference.set(container); } }; }
From source file:interactivespaces.util.web.HttpClientHttpContentCopierTest.java
/** * Test a file upload from a file.//from w ww .jav a 2 s . c o m */ @Test public void testFileUploadFile() throws Exception { File source = getTempFile(); final File destination = getTempFile(); Files.writeFile(source, TEST_CONTENT); final AtomicReference<Map<String, String>> receivedParameters = new AtomicReference<Map<String, String>>(); final CountDownLatch latch = new CountDownLatch(1); webServer.setHttpFileUploadListener(new HttpFileUploadListener() { @Override public void handleHttpFileUpload(HttpFileUpload fileUpload) { fileUpload.moveTo(destination); receivedParameters.set(fileUpload.getParameters()); latch.countDown(); } }); String sourceParameterName = "myfile"; Map<String, String> expectedParameters = Maps.newHashMap(); expectedParameters.put("foo", "bar"); expectedParameters.put("bletch", "spam"); copier.copyTo(getUrlPrefix(), source, sourceParameterName, expectedParameters); Assert.assertTrue(latch.await(10, TimeUnit.SECONDS)); Assert.assertEquals(TEST_CONTENT, Files.readFile(destination).trim()); Assert.assertEquals(expectedParameters, receivedParameters.get()); }
From source file:ch.algotrader.cache.CacheTest.java
@BeforeClass public static void beforeClass() { context = new AnnotationConfigApplicationContext(); context.getEnvironment().setActiveProfiles("embeddedDataSource", "simulation"); // register in-memory db EmbeddedDatabaseFactory dbFactory = new EmbeddedDatabaseFactory(); dbFactory.setDatabaseType(EmbeddedDatabaseType.H2); dbFactory.setDatabaseName("testdb;MODE=MYSQL;DATABASE_TO_UPPER=FALSE"); database = dbFactory.getDatabase();//from w w w .j av a 2 s . co m context.getDefaultListableBeanFactory().registerSingleton("dataSource", database); EngineManager engineManager = Mockito.mock(EngineManager.class); Mockito.when(engineManager.getCurrentEPTime()).thenReturn(new Date()); Mockito.when(engineManager.getCurrentEPTime()).thenReturn(new Date()); context.getDefaultListableBeanFactory().registerSingleton("engineManager", engineManager); AtomicReference<TransactionService> transactionService = new AtomicReference<>(); Engine engine = new NoopEngine(StrategyImpl.SERVER); context.getDefaultListableBeanFactory().registerSingleton("serverEngine", engine); ExternalMarketDataService externalMarketDataService = Mockito.mock(ExternalMarketDataService.class); context.getDefaultListableBeanFactory().registerSingleton("externalMarketDataService", externalMarketDataService); context.getDefaultListableBeanFactory().registerSingleton("historicalDataService", new NoopHistoricalDataServiceImpl()); Mockito.when(externalMarketDataService.getFeedType()).thenReturn(FeedType.IB.name()); // register Wirings context.register(CommonConfigWiring.class, CoreConfigWiring.class, EventDispatchWiring.class, EventDispatchPostInitWiring.class, HibernateWiring.class, CacheWiring.class, DaoWiring.class, ServiceWiring.class, SimulationWiring.class); context.refresh(); transactionService.set(context.getBean(TransactionService.class)); cache = context.getBean(CacheManager.class); txTemplate = context.getBean(TransactionTemplate.class); // create the database ResourceDatabasePopulator dbPopulator = new ResourceDatabasePopulator(); dbPopulator.addScript(new ClassPathResource("/db/h2/h2.sql")); DatabasePopulatorUtils.execute(dbPopulator, database); // populate the database SessionFactory sessionFactory = context.getBean(SessionFactory.class); Session session = sessionFactory.openSession(); Exchange exchange1 = new ExchangeImpl(); exchange1.setName("IDEALPRO"); exchange1.setCode("IDEALPRO"); exchange1.setTimeZone("US/Eastern"); session.save(exchange1); SecurityFamily family1 = new SecurityFamilyImpl(); family1.setName("FX"); family1.setTickSizePattern("0<0.1"); family1.setCurrency(Currency.USD); family1.setExchange(exchange1); family1.setTradeable(true); family1.setContractSize(1.0); securityFamilyId1 = (Long) session.save(family1); SecurityFamily family2 = new SecurityFamilyImpl(); family2.setName("NON_TRADEABLE"); family2.setTickSizePattern("0<0.1"); family2.setCurrency(Currency.USD); family2.setTradeable(false); family2.setContractSize(1.0); securityFamilyId2 = (Long) session.save(family2); Forex security1 = new ForexImpl(); security1.setSymbol("EUR.USD"); security1.setBaseCurrency(Currency.EUR); security1.setSecurityFamily(family1); securityId1 = (Long) session.save(security1); Forex security2 = new ForexImpl(); security2.setSymbol("GBP.USD"); security2.setBaseCurrency(Currency.GBP); security2.setSecurityFamily(family1); security2.setUnderlying(security1); securityId2 = (Long) session.save(security2); Strategy strategy1 = new StrategyImpl(); strategy1.setName(STRATEGY_NAME); strategyId1 = (Long) session.save(strategy1); Position position1 = new PositionImpl(); position1.setQuantity(222); position1.setStrategy(strategy1); position1.setSecurity(security2); position1.setCost(new BigDecimal(0.0)); position1.setRealizedPL(new BigDecimal(0.0)); session.save(position1); Property property1 = new PropertyImpl(); property1.setName(PROPERTY_NAME); property1.setDoubleValue(10.0); property1.setPropertyHolder(strategy1); session.save(property1); strategy1.getProps().put(PROPERTY_NAME, property1); Account account1 = new AccountImpl(); account1.setName("TEST"); account1.setBroker("TEST"); account1.setOrderServiceType(OrderServiceType.SIMULATION.toString()); accountId1 = (Long) session.save(account1); session.flush(); session.close(); }
From source file:io.restassured.module.mockmvc.ContentTypeTest.java
@Test public void doesnt_add_default_charset_to_content_type_if_charset_is_defined_explicitly() { final AtomicReference<String> contentType = new AtomicReference<String>(); RestAssuredMockMvc.given().standaloneSetup(new GreetingController()) .contentType(ContentType.JSON.withCharset("UTF-16")) .interceptor(new MockHttpServletRequestBuilderInterceptor() { public void intercept(MockHttpServletRequestBuilder requestBuilder) { MultiValueMap<String, Object> headers = Whitebox.getInternalState(requestBuilder, "headers"); contentType.set(String.valueOf(headers.getFirst("Content-Type"))); }//from ww w . j a va 2 s .c o m }).when().get("/greeting?name={name}", "Johan").then().statusCode(200); assertThat(contentType.get()).isEqualTo("application/json;charset=UTF-16"); }
From source file:org.zodiark.publisher.PublisherTest.java
@Test(enabled = false) public void createSessionTest() throws IOException, InterruptedException { final AtomicReference<PublisherResults> answer = new AtomicReference<>(); final ZodiarkClient publisherClient = new ZodiarkClient.Builder().path("http://127.0.0.1:" + port).build(); final CountDownLatch latch = new CountDownLatch(1); publisherClient.handler(new OnEnvelopHandler() { @Override/* www .j av a 2s.c om*/ public boolean onEnvelop(Envelope e) throws IOException { answer.set(mapper.readValue(e.getMessage().getData(), PublisherResults.class)); latch.countDown(); return true; } }).open(); Envelope createSessionMessage = Envelope .newClientToServerRequest(new Message(new Path(DB_POST_PUBLISHER_SESSION_CREATE), mapper.writeValueAsString(new UserPassword("foo", "bar")))); createSessionMessage.setFrom(new From(ActorValue.PUBLISHER)); publisherClient.send(createSessionMessage); latch.await(); assertEquals("OK", answer.get().getResults()); }