当前位置: 首页>>代码示例>>Java>>正文


Java BinaryUtils类代码示例

本文整理汇总了Java中com.amazonaws.util.BinaryUtils的典型用法代码示例。如果您正苦于以下问题:Java BinaryUtils类的具体用法?Java BinaryUtils怎么用?Java BinaryUtils使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


BinaryUtils类属于com.amazonaws.util包,在下文中一共展示了BinaryUtils类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testWriterWithExistingStream

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
@Test
public void testWriterWithExistingStream() throws Exception
{
    initialize("TestKinesisAppender/testWriterWithExistingStream.properties");

    MockKinesisClient mockClient = new MockKinesisClient();

    appender.setThreadFactory(new DefaultThreadFactory());
    appender.setWriterFactory(mockClient.newWriterFactory());

    logger.debug("example message");
    mockClient.allowWriterThread();

    assertEquals("describeStream: invocation count",        1,          mockClient.describeStreamInvocationCount);
    assertEquals("describeStream: stream name",             "argle",    mockClient.describeStreamStreamName);
    assertEquals("createStream: invocation count",          0,          mockClient.createStreamInvocationCount);
    assertEquals("putRecords: invocation count",            1,          mockClient.putRecordsInvocationCount);
    assertEquals("putRecords: source record count",         1,          mockClient.putRecordsSourceRecords.size());
    assertEquals("putRecords: source record partition key", "bargle",   mockClient.putRecordsSourceRecords.get(0).getPartitionKey());
    assertEquals("putRecords: source record content",       "example message\n",
                                                            new String(
                                                                BinaryUtils.copyAllBytesFrom(mockClient.putRecordsSourceRecords.get(0).getData()),
                                                                "UTF-8"));
}
 
开发者ID:kdgregory,项目名称:log4j-aws-appenders,代码行数:25,代码来源:TestKinesisAppender.java

示例2: createStringToSign

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
/**
 * Step 2 of the AWS Signature version 4 calculation. Refer to
 * http://docs.aws
 * .amazon.com/general/latest/gr/sigv4-create-string-to-sign.html.
 */
protected String createStringToSign(String canonicalRequest,
        AWS4SignerRequestParams signerParams) {

    final StringBuilder stringToSignBuilder = new StringBuilder(
            signerParams.getSigningAlgorithm());
    stringToSignBuilder.append(LINE_SEPARATOR)
            .append(signerParams.getFormattedSigningDateTime())
            .append(LINE_SEPARATOR)
            .append(signerParams.getScope())
            .append(LINE_SEPARATOR)
            .append(BinaryUtils.toHex(hash(canonicalRequest)));

    final String stringToSign = stringToSignBuilder.toString();

    if (log.isDebugEnabled())
        log.debug("AWS4 String to Sign: '\"" + stringToSign + "\"");

    return stringToSign;
}
 
开发者ID:IBM,项目名称:ibm-cos-sdk-java,代码行数:25,代码来源:AWS4Signer.java

示例3: buildAuthorizationHeader

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
/**
 * Creates the authorization header to be included in the request.
 */
private String buildAuthorizationHeader(SignableRequest<?> request,
        byte[] signature, AWSCredentials credentials,
        AWS4SignerRequestParams signerParams) {
    final String signingCredentials = credentials.getAWSAccessKeyId() + "/"
            + signerParams.getScope();

    final String credential = "Credential="
            + signingCredentials;
    final String signerHeaders = "SignedHeaders="
            + getSignedHeadersString(request);
    final String signatureHeader = "Signature="
            + BinaryUtils.toHex(signature);

    final StringBuilder authHeaderBuilder = new StringBuilder();

    authHeaderBuilder.append(AWS4_SIGNING_ALGORITHM)
                     .append(" ")
                     .append(credential)
                     .append(", ")
                     .append(signerHeaders)
                     .append(", ")
                     .append(signatureHeader);

    return authHeaderBuilder.toString();
}
 
开发者ID:IBM,项目名称:ibm-cos-sdk-java,代码行数:29,代码来源:AWS4Signer.java

示例4: finishSimpleUpload

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
private void finishSimpleUpload() {
    ObjectMetadata objectMetadata = new ObjectMetadata();
    objectMetadata.setContentLength(this.currentOutputStream.size());

    byte[] content = this.currentOutputStream.toByteArray();
    try {
        MessageDigest messageDigest = MessageDigest.getInstance("MD5");
        String md5Digest = BinaryUtils.toBase64(messageDigest.digest(content));
        objectMetadata.setContentMD5(md5Digest);
    } catch (NoSuchAlgorithmException e) {
        throw new IllegalStateException("MessageDigest could not be initialized because it uses an unknown algorithm", e);
    }

    SimpleStorageResource.this.amazonS3.putObject(SimpleStorageResource.this.bucketName, SimpleStorageResource.this.objectName,
            new ByteArrayInputStream(content), objectMetadata);

    //Release the memory early
    this.currentOutputStream = null;
}
 
开发者ID:spring-cloud,项目名称:spring-cloud-aws,代码行数:20,代码来源:SimpleStorageResource.java

示例5: testWriterWithNewStream

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
@Test
public void testWriterWithNewStream() throws Exception
{
    initialize("TestKinesisAppender/testWriterWithNewStream.properties");

    MockKinesisClient mockClient = new MockKinesisClient();

    appender.setThreadFactory(new DefaultThreadFactory());
    appender.setWriterFactory(mockClient.newWriterFactory());

    logger.debug("example message");
    mockClient.allowWriterThread();

    // writer calls describeStream once to see if stream exists, a second time
    // to verify that it's active -- could perhaps combine those calls?

    assertEquals("describeStream: invocation count",        3,          mockClient.describeStreamInvocationCount);
    assertEquals("describeStream: stream name",             "foo",      mockClient.describeStreamStreamName);
    assertEquals("createStream: invocation count",          1,          mockClient.createStreamInvocationCount);
    assertEquals("createStream: stream name",               "foo",      mockClient.createStreamStreamName);
    assertEquals("putRecords: invocation count",            1,          mockClient.putRecordsInvocationCount);
    assertEquals("putRecords: source record count",         1,          mockClient.putRecordsSourceRecords.size());
    assertEquals("putRecords: source record partition key", "bar",      mockClient.putRecordsSourceRecords.get(0).getPartitionKey());
    assertEquals("putRecords: source record content",       "example message\n",
                                                            new String(
                                                                BinaryUtils.copyAllBytesFrom(mockClient.putRecordsSourceRecords.get(0).getData()),
                                                                "UTF-8"));
}
 
开发者ID:kdgregory,项目名称:log4j-aws-appenders,代码行数:29,代码来源:TestKinesisAppender.java

示例6: testStaticClientFactory

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
@Test
public void testStaticClientFactory() throws Exception
{
    initialize("TestKinesisAppender/testStaticClientFactory.properties");
    appender.setThreadFactory(new DefaultThreadFactory());
    appender.setWriterFactory(new KinesisWriterFactory());

    // first message triggers writer creation

    logger.debug("example message");
    waitForInitialization();
    AbstractLogWriter writer = (AbstractLogWriter)appender.getWriter();

    assertNotNull("factory was called to create client", staticFactoryMock);
    assertEquals("no initialization errors",             "",
                                                         writer.getInitializationMessage());
    assertEquals("factory method called",                "com.kdgregory.log4j.aws.TestKinesisAppender.createMockClient",
                                                         writer.getClientFactoryUsed());

    // although we should be happy at this point, we'll actually verify that the
    // message got written; assertions copied from testWriterWithExistingStream()

    staticFactoryMock.allowWriterThread();

    assertEquals("describeStream: invocation count",        1,          staticFactoryMock.describeStreamInvocationCount);
    assertEquals("describeStream: stream name",             "argle",    staticFactoryMock.describeStreamStreamName);
    assertEquals("createStream: invocation count",          0,          staticFactoryMock.createStreamInvocationCount);
    assertEquals("putRecords: invocation count",            1,          staticFactoryMock.putRecordsInvocationCount);
    assertEquals("putRecords: source record count",         1,          staticFactoryMock.putRecordsSourceRecords.size());
    assertEquals("putRecords: source record partition key", "bargle",   staticFactoryMock.putRecordsSourceRecords.get(0).getPartitionKey());
    assertEquals("putRecords: source record content",       "example message\n",
                                                            new String(
                                                                BinaryUtils.copyAllBytesFrom(staticFactoryMock.putRecordsSourceRecords.get(0).getData()),
                                                                "UTF-8"));
}
 
开发者ID:kdgregory,项目名称:log4j-aws-appenders,代码行数:36,代码来源:TestKinesisAppender.java

示例7: RetrievedRecord

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
public RetrievedRecord(String shardId, Record record)
throws Exception
{
    this.shardId = shardId;
    this.partitionKey = record.getPartitionKey();
    this.message = new String(BinaryUtils.copyAllBytesFrom(record.getData()), "UTF-8").trim();
}
 
开发者ID:kdgregory,项目名称:log4j-aws-appenders,代码行数:8,代码来源:KinesisAppenderIntegrationTest.java

示例8: getObjectMD5

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
private String getObjectMD5(byte[] objectData) {
  byte[] expectedMd5 = null;
  try {
    expectedMd5 = Md5Utils.computeMD5Hash(objectData);
  } catch (Exception e) {}
  return BinaryUtils.toHex(expectedMd5);
}
 
开发者ID:daflockinger,项目名称:unitstack,代码行数:8,代码来源:MockS3Test.java

示例9: getAwsMessageMD5

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
private String getAwsMessageMD5(String message) {
  byte[] expectedMd5 = null;
  try {
    expectedMd5 = Md5Utils.computeMD5Hash(message.getBytes(UTF8));
  } catch (Exception e) {}
  return BinaryUtils.toHex(expectedMd5);
}
 
开发者ID:daflockinger,项目名称:unitstack,代码行数:8,代码来源:MockSqsTest.java

示例10: marshallBinaryPayload

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
/**
 * Binary data should be placed as is, directly into the content.
 */
private void marshallBinaryPayload(Object val) {
    if (val instanceof ByteBuffer) {
        request.setContent(BinaryUtils.toStream((ByteBuffer) val));
    } else if (val instanceof InputStream) {
        request.setContent((InputStream) val);
    }
}
 
开发者ID:IBM,项目名称:ibm-cos-sdk-java,代码行数:11,代码来源:JsonProtocolMarshaller.java

示例11: writeValue

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
@Override
public StructuredJsonGenerator writeValue(ByteBuffer bytes) {
    try {
        writer.writeBlob(BinaryUtils.copyAllBytesFrom(bytes));
    } catch (IOException e) {
        throw new SdkClientException(e);
    }
    return this;
}
 
开发者ID:IBM,项目名称:ibm-cos-sdk-java,代码行数:10,代码来源:SdkIonGenerator.java

示例12: writeValue

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
@Override
public StructuredJsonGenerator writeValue(ByteBuffer bytes) {
    try {
        generator.writeBinary(BinaryUtils.copyBytesFrom(bytes));
    } catch (IOException e) {
        throw new JsonGenerationException(e);
    }
    return this;
}
 
开发者ID:IBM,项目名称:ibm-cos-sdk-java,代码行数:10,代码来源:SdkJsonGenerator.java

示例13: presignRequest

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
@Override
public void presignRequest(SignableRequest<?> request, AWSCredentials credentials,
        Date userSpecifiedExpirationDate) {

    // anonymous credentials, don't sign
    if (isAnonymous(credentials)) {
        return;
    }

    long expirationInSeconds = generateExpirationDate(userSpecifiedExpirationDate);

    addHostHeader(request);

    AWSCredentials sanitizedCredentials = sanitizeCredentials(credentials);
    if (sanitizedCredentials instanceof AWSSessionCredentials) {
        // For SigV4 pre-signing URL, we need to add "X-Amz-Security-Token"
        // as a query string parameter, before constructing the canonical
        // request.
        request.addParameter(X_AMZ_SECURITY_TOKEN,
                ((AWSSessionCredentials) sanitizedCredentials)
                        .getSessionToken());
    }

    final AWS4SignerRequestParams signerRequestParams = new AWS4SignerRequestParams(
            request, overriddenDate, regionName, serviceName,
            AWS4_SIGNING_ALGORITHM);

    // Add the important parameters for v4 signing
    final String timeStamp = signerRequestParams.getFormattedSigningDateTime();

    addPreSignInformationToRequest(request, sanitizedCredentials,
            signerRequestParams, timeStamp, expirationInSeconds);

    final String contentSha256 = calculateContentHashPresign(request);

    final String canonicalRequest = createCanonicalRequest(request,
            contentSha256);

    final String stringToSign = createStringToSign(canonicalRequest,
            signerRequestParams);

    final byte[] signingKey = deriveSigningKey(sanitizedCredentials,
            signerRequestParams);

    final byte[] signature = computeSignature(stringToSign, signingKey,
            signerRequestParams);

    request.addParameter(X_AMZ_SIGNATURE, BinaryUtils.toHex(signature));
}
 
开发者ID:IBM,项目名称:ibm-cos-sdk-java,代码行数:50,代码来源:AWS4Signer.java

示例14: calculateContentHash

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
/**
 * Calculate the hash of the request's payload. Subclass could override this
 * method to provide different values for "x-amz-content-sha256" header or
 * do any other necessary set-ups on the request headers. (e.g. aws-chunked
 * uses a pre-defined header value, and needs to change some headers
 * relating to content-encoding and content-length.)
 */
protected String calculateContentHash(SignableRequest<?> request) {
    InputStream payloadStream = getBinaryRequestPayloadStream(request);
    ReadLimitInfo info = request.getReadLimitInfo();
    payloadStream.mark(info == null ? -1 : info.getReadLimit());
    String contentSha256 = BinaryUtils.toHex(hash(payloadStream));
    try {
        payloadStream.reset();
    } catch (IOException e) {
        throw new SdkClientException(
                "Unable to reset stream after calculating AWS4 signature",
                e);
    }
    return contentSha256;
}
 
开发者ID:IBM,项目名称:ibm-cos-sdk-java,代码行数:22,代码来源:AWS4Signer.java

示例15: createSignedChunk

import com.amazonaws.util.BinaryUtils; //导入依赖的package包/类
private byte[] createSignedChunk(byte[] chunkData) {
    StringBuilder chunkHeader = new StringBuilder();
    // chunk-size
    chunkHeader.append(Integer.toHexString(chunkData.length));
    // sig-extension
    final String chunkStringToSign =
            CHUNK_STRING_TO_SIGN_PREFIX + "\n" +
            dateTime + "\n" +
            keyPath + "\n" +
            priorChunkSignature + "\n" +
            AbstractAWSSigner.EMPTY_STRING_SHA256_HEX + "\n" +
            BinaryUtils.toHex(sha256.digest(chunkData));
    final String chunkSignature =
        BinaryUtils.toHex(aws4Signer.signWithMac(chunkStringToSign, hmacSha256));
    priorChunkSignature = chunkSignature;
    chunkHeader.append(CHUNK_SIGNATURE_HEADER)
               .append(chunkSignature)
               .append(CRLF)
               ;
    try {
        byte[] header = chunkHeader.toString().getBytes(UTF8);
        byte[] trailer = CRLF.getBytes(UTF8);
        byte[] signedChunk = new byte[header.length + chunkData.length + trailer.length];
        System.arraycopy(header, 0, signedChunk, 0, header.length);
        System.arraycopy(chunkData, 0, signedChunk, header.length, chunkData.length);
        System.arraycopy(trailer, 0,
                signedChunk, header.length + chunkData.length,
                trailer.length);
        return signedChunk;
    } catch (Exception e) {
        throw new SdkClientException("Unable to sign the chunked data. " + e.getMessage(), e);
    }
}
 
开发者ID:IBM,项目名称:ibm-cos-sdk-java,代码行数:34,代码来源:AwsChunkedEncodingInputStream.java


注:本文中的com.amazonaws.util.BinaryUtils类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。