@Override public GetAccessTokenResult getAccessTokenUncached(Iterable<String> scopes) { GetAccessTokenRequest.Builder requestBuilder = GetAccessTokenRequest.newBuilder(); for (String scope : scopes) { requestBuilder.addScope(scope); } if (requestBuilder.getScopeCount() == 0) { throw new AppIdentityServiceFailureException("No scopes specified."); } GetAccessTokenResponse.Builder responseBuilder = GetAccessTokenResponse.newBuilder(); try { responseBuilder.mergeFrom( ApiProxy.makeSyncCall( getAccessTokenPackageName(), GET_ACCESS_TOKEN_METHOD_NAME, requestBuilder.build().toByteArray())); } catch (ApiProxy.ApplicationException e) { handleApplicationError(e); } catch (InvalidProtocolBufferException e) { throw new AppIdentityServiceFailureException(e.getMessage()); } GetAccessTokenResponse response = responseBuilder.build(); return new GetAccessTokenResult( response.getAccessToken(), new Date(response.getExpirationTime() * 1000)); }
public void deserializeFromByteArray(Message.Builder builder, byte[] array) { try { builder.mergeFrom(array); } catch (InvalidProtocolBufferException e) { log.error(e.getMessage()); } }
/** * Load the information in the SnapshotManifest. Called by SnapshotManifest.open() * * <p>If the format is v2 and there is no data-manifest, means that we are loading an in-progress * snapshot. Since we support rolling-upgrades, we loook for v1 and v2 regions format. */ private void load() throws IOException { switch (getSnapshotFormat(desc)) { case SnapshotManifestV1.DESCRIPTOR_VERSION: { this.htd = FSTableDescriptors.getTableDescriptorFromFs(fs, workingDir).getHTableDescriptor(); ThreadPoolExecutor tpool = createExecutor("SnapshotManifestLoader"); try { this.regionManifests = SnapshotManifestV1.loadRegionManifests(conf, tpool, fs, workingDir, desc); } finally { tpool.shutdown(); } break; } case SnapshotManifestV2.DESCRIPTOR_VERSION: { SnapshotDataManifest dataManifest = readDataManifest(); if (dataManifest != null) { htd = ProtobufUtil.convertToHTableDesc(dataManifest.getTableSchema()); regionManifests = dataManifest.getRegionManifestsList(); } else { // Compatibility, load the v1 regions // This happens only when the snapshot is in-progress and the cache wants to refresh. List<SnapshotRegionManifest> v1Regions, v2Regions; ThreadPoolExecutor tpool = createExecutor("SnapshotManifestLoader"); try { v1Regions = SnapshotManifestV1.loadRegionManifests(conf, tpool, fs, workingDir, desc); v2Regions = SnapshotManifestV2.loadRegionManifests(conf, tpool, fs, workingDir, desc); } catch (InvalidProtocolBufferException e) { throw new CorruptedSnapshotException( "unable to parse region manifest " + e.getMessage(), e); } finally { tpool.shutdown(); } if (v1Regions != null && v2Regions != null) { regionManifests = new ArrayList<SnapshotRegionManifest>(v1Regions.size() + v2Regions.size()); regionManifests.addAll(v1Regions); regionManifests.addAll(v2Regions); } else if (v1Regions != null) { regionManifests = v1Regions; } else /* if (v2Regions != null) */ { regionManifests = v2Regions; } } break; } default: throw new CorruptedSnapshotException( "Invalid Snapshot version: " + desc.getVersion(), ProtobufUtil.createSnapshotDesc(desc)); } }
/* * Read the SnapshotDataManifest file */ private SnapshotDataManifest readDataManifest() throws IOException { FSDataInputStream in = null; try { in = fs.open(new Path(workingDir, DATA_MANIFEST_NAME)); CodedInputStream cin = CodedInputStream.newInstance(in); cin.setSizeLimit(manifestSizeLimit); return SnapshotDataManifest.parseFrom(cin); } catch (FileNotFoundException e) { return null; } catch (InvalidProtocolBufferException e) { throw new CorruptedSnapshotException("unable to parse data manifest " + e.getMessage(), e); } finally { if (in != null) in.close(); } }
@Override public SigningResult signForApp(byte[] signBlob) { SignForAppRequest.Builder requestBuilder = SignForAppRequest.newBuilder(); requestBuilder.setBytesToSign(ByteString.copyFrom(signBlob)); SignForAppResponse.Builder responseBuilder = SignForAppResponse.newBuilder(); try { responseBuilder.mergeFrom( ApiProxy.makeSyncCall( PACKAGE_NAME, SIGN_FOR_APP_METHOD_NAME, requestBuilder.build().toByteArray())); } catch (ApiProxy.ApplicationException e) { handleApplicationError(e); } catch (InvalidProtocolBufferException e) { throw new AppIdentityServiceFailureException(e.getMessage()); } SignForAppResponse response = responseBuilder.build(); return new SigningResult(response.getKeyName(), response.getSignatureBytes().toByteArray()); }
@Override public String getServiceAccountName() { GetServiceAccountNameRequest.Builder requestBuilder = GetServiceAccountNameRequest.newBuilder(); GetServiceAccountNameResponse.Builder responseBuilder = GetServiceAccountNameResponse.newBuilder(); try { responseBuilder.mergeFrom( ApiProxy.makeSyncCall( getAccessTokenPackageName(), GET_SERVICE_ACCOUNT_NAME_METHOD_NAME, requestBuilder.build().toByteArray())); } catch (ApiProxy.ApplicationException e) { handleApplicationError(e); } catch (InvalidProtocolBufferException e) { throw new AppIdentityServiceFailureException(e.getMessage()); } GetServiceAccountNameResponse response = responseBuilder.build(); return response.getServiceAccountName(); }
@Override public List<PublicCertificate> getPublicCertificatesForApp() { GetPublicCertificateForAppRequest.Builder requestBuilder = GetPublicCertificateForAppRequest.newBuilder(); GetPublicCertificateForAppResponse.Builder responseBuilder = GetPublicCertificateForAppResponse.newBuilder(); try { responseBuilder.mergeFrom( ApiProxy.makeSyncCall( PACKAGE_NAME, GET_CERTS_METHOD_NAME, requestBuilder.build().toByteArray())); } catch (ApiProxy.ApplicationException e) { handleApplicationError(e); } catch (InvalidProtocolBufferException e) { throw new AppIdentityServiceFailureException(e.getMessage()); } GetPublicCertificateForAppResponse response = responseBuilder.build(); List<PublicCertificate> certs = Lists.newArrayList(); for (AppIdentityServicePb.PublicCertificate cert : response.getPublicCertificateListList()) { certs.add(new PublicCertificate(cert.getKeyName(), cert.getX509CertificatePem())); } return certs; }
@Override public void run() { Log.i(TAG, "Connection started"); MessageWriter writer = null; MessageRouter router = null; try { MessageReader reader = new MessageReader(socket.getInputStream()); writer = new MessageWriter(socket.getOutputStream()); writers.add(writer); router = new MessageRouter(writer); router.register(Wire.MessageType.DO_IDENTIFY, new DoIdentifyResponder(getBaseContext())); router.register( Wire.MessageType.DO_ADD_ACCOUNT_MENU, new DoAddAccountMenuResponder(getBaseContext())); router.register( Wire.MessageType.DO_REMOVE_ACCOUNT, new DoRemoveAccountResponder(getBaseContext())); router.register( Wire.MessageType.GET_ACCOUNTS, new GetAccountsResponder(getBaseContext())); router.register( Wire.MessageType.GET_BROWSERS, new GetBrowsersResponder(getBaseContext())); router.register( Wire.MessageType.GET_CLIPBOARD, new GetClipboardResponder(getBaseContext())); router.register(Wire.MessageType.GET_DISPLAY, new GetDisplayResponder(getBaseContext())); router.register( Wire.MessageType.GET_PROPERTIES, new GetPropertiesResponder(getBaseContext())); router.register( Wire.MessageType.GET_RINGER_MODE, new GetRingerModeResponder(getBaseContext())); router.register( Wire.MessageType.GET_SD_STATUS, new GetSdStatusResponder(getBaseContext())); router.register(Wire.MessageType.GET_VERSION, new GetVersionResponder(getBaseContext())); router.register( Wire.MessageType.GET_WIFI_STATUS, new GetWifiStatusResponder(getBaseContext())); router.register( Wire.MessageType.SET_CLIPBOARD, new SetClipboardResponder(getBaseContext())); router.register( Wire.MessageType.SET_KEYGUARD_STATE, new SetKeyguardStateResponder(getBaseContext())); router.register( Wire.MessageType.SET_RINGER_MODE, new SetRingerModeResponder(getBaseContext())); router.register( Wire.MessageType.SET_WAKE_LOCK, new SetWakeLockResponder(getBaseContext())); router.register( Wire.MessageType.SET_WIFI_ENABLED, new SetWifiEnabledResponder(getBaseContext())); router.register( Wire.MessageType.SET_MASTER_MUTE, new SetMasterMuteResponder(getBaseContext())); for (AbstractMonitor monitor : monitors) { monitor.peek(writer); } while (!isInterrupted()) { Wire.Envelope envelope = reader.read(); if (envelope == null) { break; } router.route(envelope); } } catch (InvalidProtocolBufferException e) { Log.e(TAG, e.getMessage()); e.printStackTrace(); } catch (IOException e) { } catch (Exception e) { e.printStackTrace(); } finally { Log.i(TAG, "Connection stopping"); writers.remove(writer); if (router != null) { router.cleanup(); } try { socket.close(); } catch (IOException e) { e.printStackTrace(); } } }
public List<Variant> getRecordSimpleStats( String study, int missing_gt, float maf, String maf_allele) { BasicDBObject compare = new BasicDBObject("studies.stats.allele_maf", maf_allele) .append("studies.stats.MAF", maf) .append("studies.stats.missing", missing_gt); List<Get> hbaseQuery = new ArrayList<>(); DBCollection collection = db.getCollection("variants"); Iterator<DBObject> result = collection.find(compare); String chromosome = new String(); while (result.hasNext()) { DBObject variant = result.next(); String position = variant.get("_id").toString(); // hbase query construction Get get = new Get(position.getBytes()); hbaseQuery.add(get); } // Complete results, from HBase tableName = study; effectTableName = tableName + "effect"; Map<String, Variant> resultsMap = new HashMap<>(); try { HTable table = new HTable(admin.getConfiguration(), tableName); HTable effectTable = new HTable(admin.getConfiguration(), effectTableName); Result[] hbaseResultEffect = effectTable.get(hbaseQuery); Result[] hbaseResultStats = table.get(hbaseQuery); // List<Variant> results = new LinkedList<>(); for (Result r : hbaseResultStats) { String position = new String(r.getRow(), CHARSET_UTF_8); String[] aux = position.split("_"); String inner_position = aux[1]; String chr = aux[0]; // position parsing if (chr.startsWith("0")) { chr = chr.substring(1); } while (inner_position.startsWith("0")) { inner_position = inner_position.substring(1); } List<VariantFieldsProtos.VariantSample> samples = new LinkedList<>(); NavigableMap<byte[], byte[]> infoMap = r.getFamilyMap("i".getBytes()); byte[] byteStats = infoMap.get((study + "_stats").getBytes()); VariantFieldsProtos.VariantStats stats = VariantFieldsProtos.VariantStats.parseFrom(byteStats); byte[] byteInfo = infoMap.get((study + "_data").getBytes()); VariantFieldsProtos.VariantInfo info = VariantFieldsProtos.VariantInfo.parseFrom(byteInfo); String alternate = StringUtils.join(info.getAlternateList(), ", "); String reference = info.getReference(); Variant partialResult = new Variant( chr, Integer.parseInt(inner_position), Integer.parseInt(inner_position), reference, alternate); String format = StringUtils.join(info.getFormatList(), ":"); NavigableMap<byte[], byte[]> sampleMap = r.getFamilyMap("d".getBytes()); Map<String, Map<String, String>> resultSampleMap = new HashMap<>(); // StringBuilder sampleRaw = new StringBuilder(); for (byte[] s : sampleMap.keySet()) { String qual = (new String(s, CHARSET_UTF_8)).replaceAll(study + "_", ""); VariantFieldsProtos.VariantSample sample = VariantFieldsProtos.VariantSample.parseFrom(sampleMap.get(s)); String sample1 = sample.getSample(); String[] values = sample1.split(":"); String[] fields = format.split(":"); Map<String, String> singleSampleMap = new HashMap<>(); for (int i = 0; i < fields.length; i++) { singleSampleMap.put(fields[i], values[i]); } resultSampleMap.put(qual, singleSampleMap); } VariantStats variantStats = new VariantStats( chromosome, Integer.parseInt(inner_position), reference, alternate, stats.getMaf(), stats.getMgf(), stats.getMafAllele(), stats.getMgfGenotype(), stats.getMissingAlleles(), stats.getMissingGenotypes(), stats.getMendelianErrors(), stats.getIsIndel(), stats.getCasesPercentDominant(), stats.getControlsPercentDominant(), stats.getCasesPercentRecessive(), stats.getControlsPercentRecessive()); partialResult.setStats(variantStats); resultsMap.put(new String(r.getRow(), CHARSET_UTF_8), partialResult); } for (Result r : hbaseResultEffect) { if (!r.isEmpty()) { NavigableMap<byte[], byte[]> effectMap = r.getFamilyMap("e".getBytes()); Variant partialResult = resultsMap.get(new String(r.getRow(), CHARSET_UTF_8)); System.out.println("Recuperado " + partialResult.toString()); String s = partialResult.getReference() + "_" + partialResult.getAlternate(); VariantEffectProtos.EffectInfo effectInfo = VariantEffectProtos.EffectInfo.parseFrom(effectMap.get(s.getBytes())); VariantEffect variantEffect = new VariantEffect( partialResult.getChromosome(), (int) partialResult.getStart(), partialResult.getReference(), partialResult.getAlternate(), effectInfo.getFeatureId(), effectInfo.getFeatureName(), effectInfo.getFeatureType(), effectInfo.getFeatureBiotype(), effectInfo.getFeatureChromosome(), effectInfo.getFeatureStart(), effectInfo.getFeatureEnd(), effectInfo.getFeatureStrand(), effectInfo.getSnpId(), effectInfo.getAncestral(), effectInfo.getAlternative(), effectInfo.getGeneId(), effectInfo.getTranscriptId(), effectInfo.getGeneName(), effectInfo.getConsequenceType(), effectInfo.getConsequenceTypeObo(), effectInfo.getConsequenceTypeDesc(), effectInfo.getConsequenceTypeType(), effectInfo.getAaPosition(), effectInfo.getAminoacidChange(), effectInfo.getCodonChange()); resultsMap.put(new String(r.getRow(), CHARSET_UTF_8), partialResult); } } } catch (InvalidProtocolBufferException e) { System.err.println(e.getClass().getName() + ": " + e.getMessage()); } catch (IOException e) { System.err.println(e.getClass().getName() + ": " + e.getMessage()); } List<Variant> results = new ArrayList<>(resultsMap.values()); return results; }
private Conformance.ConformanceResponse doTest(Conformance.ConformanceRequest request) { Conformance.TestAllTypes testMessage; switch (request.getPayloadCase()) { case PROTOBUF_PAYLOAD: { try { testMessage = Conformance.TestAllTypes.parseFrom(request.getProtobufPayload()); } catch (InvalidProtocolBufferException e) { return Conformance.ConformanceResponse.newBuilder() .setParseError(e.getMessage()) .build(); } break; } case JSON_PAYLOAD: { try { Conformance.TestAllTypes.Builder builder = Conformance.TestAllTypes.newBuilder(); JsonFormat.parser() .usingTypeRegistry(typeRegistry) .merge(request.getJsonPayload(), builder); testMessage = builder.build(); } catch (InvalidProtocolBufferException e) { return Conformance.ConformanceResponse.newBuilder() .setParseError(e.getMessage()) .build(); } break; } case PAYLOAD_NOT_SET: { throw new RuntimeException("Request didn't have payload."); } default: { throw new RuntimeException("Unexpected payload case."); } } switch (request.getRequestedOutputFormat()) { case UNSPECIFIED: throw new RuntimeException("Unspecified output format."); case PROTOBUF: return Conformance.ConformanceResponse.newBuilder() .setProtobufPayload(testMessage.toByteString()) .build(); case JSON: try { return Conformance.ConformanceResponse.newBuilder() .setJsonPayload( JsonFormat.printer().usingTypeRegistry(typeRegistry).print(testMessage)) .build(); } catch (InvalidProtocolBufferException | IllegalArgumentException e) { return Conformance.ConformanceResponse.newBuilder() .setSerializeError(e.getMessage()) .build(); } default: { throw new RuntimeException("Unexpected request output."); } } }