List of usage examples for com.fasterxml.jackson.databind ObjectReader readValue
@SuppressWarnings("unchecked") public <T> T readValue(JsonNode src) throws IOException, JsonProcessingException
From source file:ch.cyberduck.core.sds.SDSWriteFeature.java
@Override public HttpResponseOutputStream<VersionId> write(final Path file, final TransferStatus status, final ConnectionCallback callback) throws BackgroundException { final CreateFileUploadRequest body = new CreateFileUploadRequest(); body.setParentId(Long.parseLong( new SDSNodeIdProvider(session).getFileid(file.getParent(), new DisabledListProgressListener()))); body.setName(file.getName());/*www . j a v a 2s .c o m*/ body.classification(DEFAULT_CLASSIFICATION); try { final CreateFileUploadResponse response = new NodesApi(session.getClient()) .createFileUpload(StringUtils.EMPTY, body); final String uploadId = response.getUploadId(); final DelayedHttpMultipartEntity entity = new DelayedHttpMultipartEntity(file.getName(), status); final DelayedHttpEntityCallable<VersionId> command = new DelayedHttpEntityCallable<VersionId>() { @Override public VersionId call(final AbstractHttpEntity entity) throws BackgroundException { try { final SDSApiClient client = session.getClient(); final HttpPost request = new HttpPost( String.format("%s/nodes/files/uploads/%s", client.getBasePath(), uploadId)); request.setEntity(entity); request.setHeader(SDSSession.SDS_AUTH_TOKEN_HEADER, StringUtils.EMPTY); request.setHeader(HTTP.CONTENT_TYPE, String.format("multipart/form-data; boundary=%s", DelayedHttpMultipartEntity.DEFAULT_BOUNDARY)); final HttpResponse response = client.getClient().execute(request); try { // Validate response switch (response.getStatusLine().getStatusCode()) { case HttpStatus.SC_CREATED: // Upload complete break; default: EntityUtils.updateEntity(response, new BufferedHttpEntity(response.getEntity())); throw new SDSExceptionMappingService() .map(new ApiException(response.getStatusLine().getStatusCode(), response.getStatusLine().getReasonPhrase(), Collections.emptyMap(), EntityUtils.toString(response.getEntity()))); } } finally { EntityUtils.consume(response.getEntity()); } final CompleteUploadRequest body = new CompleteUploadRequest(); if (status.isExists()) { body.setResolutionStrategy(CompleteUploadRequest.ResolutionStrategyEnum.OVERWRITE); } if (status.getFilekey() != null) { final ObjectReader reader = session.getClient().getJSON().getContext(null) .readerFor(FileKey.class); final FileKey fileKey = reader.readValue(status.getFilekey().array()); final EncryptedFileKey encryptFileKey = Crypto.encryptFileKey( TripleCryptConverter.toCryptoPlainFileKey(fileKey), TripleCryptConverter .toCryptoUserPublicKey(session.keyPair().getPublicKeyContainer())); body.setFileKey(TripleCryptConverter.toSwaggerFileKey(encryptFileKey)); } final Node upload = new NodesApi(client).completeFileUpload(StringUtils.EMPTY, uploadId, null, body); return new VersionId(String.valueOf(upload.getId())); } catch (IOException e) { throw new HttpExceptionMappingService().map("Upload {0} failed", e, file); } catch (ApiException e) { throw new SDSExceptionMappingService().map("Upload {0} failed", e, file); } catch (CryptoSystemException | InvalidFileKeyException | InvalidKeyPairException e) { throw new CryptoExceptionMappingService().map("Upload {0} failed", e, file); } } @Override public long getContentLength() { return entity.getContentLength(); } }; return this.write(file, status, command, entity); } catch (ApiException e) { throw new SDSExceptionMappingService().map("Upload {0} failed", e, file); } }
From source file:cf.nats.message.Demarshalling.java
@Test public void routerRegisterUaa() throws Exception { final ObjectReader reader = mapper.reader(RouterRegister.class); final String routerRegisterMessage = "{\"host\":\"127.0.0.1\",\"port\":8100,\"uris\":[\"uaa.mikeheath.cloudfoundry.me\",\"login.mikeheath.cloudfoundry.me\"],\"tags\":{\"component\":\"uaa\"}}"; final RouterRegister routerRegister = reader.readValue(routerRegisterMessage); assertNotNull(routerRegister);/* w w w . j a v a2 s. c o m*/ assertEquals("127.0.0.1", routerRegister.getHost()); assertEquals(Integer.valueOf(8100), routerRegister.getPort()); assertEquals("uaa.mikeheath.cloudfoundry.me", routerRegister.getUris().get(0)); assertEquals("login.mikeheath.cloudfoundry.me", routerRegister.getUris().get(1)); }
From source file:cf.nats.message.Demarshalling.java
@Test public void componentAnnounceRouter() throws Exception { final ObjectReader reader = mapper.reader(ComponentAnnounce.class); final String router = "{\"type\":\"Router\",\"index\":0,\"uuid\":\"0-9adf36d840acd3b1747cdaf4cf4cc949\",\"host\":\"127.0.0.1:8080\",\"credentials\":[\"f0e24f6bb38ec0cb\",\"72153443a92c05be\"],\"start\":\"2012-11-14 05:35:16 +0000\"}"; final ComponentAnnounce routerAnnounce = reader.readValue(router); assertNotNull(routerAnnounce);//from w w w .ja v a 2s. c o m assertEquals(ComponentAnnounce.TYPE_ROUTER, routerAnnounce.getType()); assertEquals(Integer.valueOf(0), routerAnnounce.getIndex()); assertEquals("0-9adf36d840acd3b1747cdaf4cf4cc949", routerAnnounce.getUuid()); }
From source file:cf.nats.message.Demarshalling.java
@Test public void routerRegisterDeaApp() throws Exception { final ObjectReader reader = mapper.reader(RouterRegister.class); final String routerRegisterMessage = "{\"dea\":\"0-02ab79376f8a42fe82503ec2a258c345\",\"app\":\"1\",\"host\":\"127.0.0.1\",\"port\":22173,\"uris\":[\"hello.mikeheath.cloudfoundry.me\"],\"tags\":{\"framework\":\"sinatra\",\"runtime\":\"ruby18\"}}"; final RouterRegister routerRegister = reader.readValue(routerRegisterMessage); assertNotNull(routerRegister);//ww w.j av a2 s .c om assertEquals("127.0.0.1", routerRegister.getHost()); assertEquals(Integer.valueOf(22173), routerRegister.getPort()); assertEquals("0-02ab79376f8a42fe82503ec2a258c345", routerRegister.getDea()); assertEquals("hello.mikeheath.cloudfoundry.me", routerRegister.getUris().get(0)); }
From source file:com.unboundid.scim2.server.providers.DotSearchFilter.java
/** * {@inheritDoc}/* w w w. j av a 2 s .c o m*/ */ public void filter(final ContainerRequestContext requestContext) throws IOException { if (requestContext.getMethod().equals(HttpMethod.POST) && requestContext.getUriInfo().getPath().endsWith(SEARCH_WITH_POST_PATH_EXTENSION)) { if (requestContext.getMediaType() == null || !(requestContext.getMediaType().isCompatible(ServerUtils.MEDIA_TYPE_SCIM_TYPE) || requestContext.getMediaType().isCompatible(MediaType.APPLICATION_JSON_TYPE))) { throw new NotSupportedException(); } ObjectReader reader = JsonUtils.getObjectReader().forType(SearchRequest.class); JsonParser p = reader.getFactory().createParser(requestContext.getEntityStream()); if (p.nextToken() == null) { throw new BadRequestException(new NoContentException("Empty Entity")); } SearchRequest searchRequest = reader.readValue(p); UriBuilder builder = requestContext.getUriInfo().getBaseUriBuilder(); List<PathSegment> pathSegments = requestContext.getUriInfo().getPathSegments(); for (int i = 0; i < pathSegments.size() - 1; i++) { builder.path(pathSegments.get(i).getPath()); } if (searchRequest.getAttributes() != null) { builder.queryParam(QUERY_PARAMETER_ATTRIBUTES, StaticUtils.collectionToString(searchRequest.getAttributes(), ",")); } if (searchRequest.getExcludedAttributes() != null) { builder.queryParam(QUERY_PARAMETER_EXCLUDED_ATTRIBUTES, StaticUtils.collectionToString(searchRequest.getExcludedAttributes(), ",")); } if (searchRequest.getFilter() != null) { builder.queryParam(QUERY_PARAMETER_FILTER, searchRequest.getFilter()); } if (searchRequest.getSortBy() != null) { builder.queryParam(QUERY_PARAMETER_SORT_BY, searchRequest.getSortBy()); } if (searchRequest.getSortOrder() != null) { builder.queryParam(QUERY_PARAMETER_SORT_ORDER, searchRequest.getSortOrder().getName()); } if (searchRequest.getStartIndex() != null) { builder.queryParam(QUERY_PARAMETER_PAGE_START_INDEX, searchRequest.getStartIndex()); } if (searchRequest.getCount() != null) { builder.queryParam(QUERY_PARAMETER_PAGE_SIZE, searchRequest.getCount()); } requestContext.setRequestUri(builder.build()); requestContext.setMethod(HttpMethod.GET); } }
From source file:com.zero_x_baadf00d.play.module.redis.RedisModuleImpl.java
@Override public <T> List<T> getFromList(final String key, final TypeReference<T> typeReference, final int offset, final int count) { final List<T> objects = new ArrayList<>(); try {/*from w ww . j a v a2 s . c o m*/ final List<String> rawData; try (final Jedis jedis = this.redisPool.getResource()) { if (this.redisDefaultDb != null) { jedis.select(this.redisDefaultDb); } rawData = jedis.lrange(key, offset, count > 0 ? count - 1 : count); } if (rawData != null) { final ObjectReader objectReader = Json.mapper().readerFor(typeReference); for (final String s : rawData) { objects.add(objectReader.readValue(s)); } } } catch (IOException | NullPointerException ex) { RedisModuleImpl.LOG.error("Something goes wrong with Redis module", ex); } return objects; }
From source file:com.basistech.rosette.dm.json.array.JsonTest.java
@Test public void roundTrip() throws Exception { ObjectMapper mapper = AnnotatedDataModelModule.setupObjectMapper(new ObjectMapper()); ObjectWriter objectWriter = mapper.writer(); String json = objectWriter.writeValueAsString(referenceText); ObjectReader reader = mapper.readerFor(AnnotatedText.class); AnnotatedText read = reader.readValue(json); ListAttribute<BaseNounPhrase> bnpList = read.getBaseNounPhrases(); assertNotNull(bnpList);//from w w w . j av a 2 s.c o m assertEquals(1, bnpList.size()); BaseNounPhrase bnp = bnpList.get(0); assertEquals(baseNounPhrase, bnp); ListAttribute<com.basistech.rosette.dm.EntityMention> emList = read.getEntityMentions(); assertNotNull(emList); assertEquals(1, emList.size()); com.basistech.rosette.dm.EntityMention em = emList.get(0); assertEquals(entityMention, em); ListAttribute<RelationshipMention> rmList = read.getRelationshipMentions(); assertNotNull(rmList); assertEquals(1, rmList.size()); RelationshipMention rm = rmList.get(0); assertEquals(relationshipMention, rm); ListAttribute<com.basistech.rosette.dm.ResolvedEntity> resolvedEntityList = read.getResolvedEntities(); assertNotNull(resolvedEntityList); assertEquals(1, resolvedEntityList.size()); com.basistech.rosette.dm.ResolvedEntity e = resolvedEntityList.get(0); assertEquals(resolvedEntity, e); ListAttribute<LanguageDetection> languageDetectionList = read.getLanguageDetectionRegions(); assertNotNull(languageDetectionList); assertEquals(1, languageDetectionList.size()); assertEquals(languageDetectionRegion, languageDetectionList.get(0)); assertEquals(languageDetection, read.getWholeTextLanguageDetection()); ListAttribute<ScriptRegion> scriptRegionList = read.getScriptRegions(); assertNotNull(scriptRegionList); assertEquals(1, scriptRegionList.size()); assertEquals(scriptRegion, scriptRegionList.get(0)); ListAttribute<Sentence> sentences = read.getSentences(); assertNotNull(sentences); assertEquals(sentence, sentences.get(0)); ListAttribute<Token> tokenList = read.getTokens(); assertNotNull(tokenList); assertEquals(1, tokenList.size()); assertEquals(token, tokenList.get(0)); ListAttribute<TranslatedData> dataTranslations = read.getTranslatedData(); assertEquals(germanTranslatedData, dataTranslations.get(0)); assertEquals(spanishTranslatedData, dataTranslations.get(1)); ListAttribute<TranslatedTokens> translatedTokens = read.getTranslatedTokens(); assertEquals(germanTranslation, translatedTokens.get(0)); assertEquals(spanishTranslation, translatedTokens.get(1)); assertEquals(categoryResult, read.getCategorizerResults().get(0)); assertEquals(sentimentResult, read.getSentimentResults().get(0)); assertEquals(topicResult, read.getTopicResults().get(0)); }