@Override protected InputStream createStream(long startPos, long endPos) throws IOException { GetObjectRequest req = new GetObjectRequest(mBucketName, mKey); // COS returns entire object if we read past the end req.setRange(startPos, endPos < mContentLength ? endPos - 1 : mContentLength - 1); COSObject object = mCosClient.getObject(req); return new BufferedInputStream(object.getObjectContent()); } }
@Override public COSObject getCOSObjectStream() { return getObject(getObjectRequest); } }, ServiceUtils.OVERWRITE_MODE);
@Override public COSObject getCOSObjectStream() { return getObject(getObjectRequest); } }, ServiceUtils.OVERWRITE_MODE);
@Override public COSObject getObject(String bucketName, String key) throws CosClientException, CosServiceException { return getObject(new GetObjectRequest(bucketName, key)); }
@Override public COSObject getObject(String bucketName, String key) throws CosClientException, CosServiceException { return getObject(new GetObjectRequest(bucketName, key)); }
public static void UseTemporyTokenUploadAndDownload() { // 使用云api秘钥,可以获取一个临时secret id,secret key和session token, BasicSessionCredentials cred = getSessionCredential(); // 设置区域, 这里设置为北京一区 ClientConfig clientConfig = new ClientConfig(new Region("ap-beijing-1")); // 生成cos客户端对象 COSClient cosClient = new COSClient(cred, clientConfig); // 上传的bucket名字 String bucketName = "rabbitliutj-1000000"; // 上传object, 建议20M以下的文件使用该接口 File localFile = new File("src/test/resources/len5M.txt"); String key = "upload_single_demo5M.txt"; // 上传 PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, localFile); ObjectMetadata objectMetadata = new ObjectMetadata(); PutObjectResult putObjectResult = cosClient.putObject(putObjectRequest); System.out.println(putObjectResult.getMetadata()); // 下载 File downFile = new File("src/test/resources/len5M_down.txt"); GetObjectRequest getObjectRequest = new GetObjectRequest(bucketName, key); ObjectMetadata downObjectMeta = cosClient.getObject(getObjectRequest, downFile); // 关闭客户端(关闭后台线程) cosClient.shutdown(); }
public static void UseTemporyTokenUploadAndDownload() { // 使用云api秘钥,可以获取一个临时secret id,secret key和session token, BasicSessionCredentials cred = getSessionCredential(); // 设置区域, 这里设置为北京一区 ClientConfig clientConfig = new ClientConfig(new Region("ap-beijing-1")); // 生成cos客户端对象 COSClient cosClient = new COSClient(cred, clientConfig); // 上传的bucket名字 String bucketName = "rabbitliutj-1000000"; // 上传object, 建议20M以下的文件使用该接口 File localFile = new File("src/test/resources/len5M.txt"); String key = "upload_single_demo5M.txt"; // 上传 PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, localFile); ObjectMetadata objectMetadata = new ObjectMetadata(); PutObjectResult putObjectResult = cosClient.putObject(putObjectRequest); System.out.println(putObjectResult.getMetadata()); // 下载 File downFile = new File("src/test/resources/len5M_down.txt"); GetObjectRequest getObjectRequest = new GetObjectRequest(bucketName, key); ObjectMetadata downObjectMeta = cosClient.getObject(getObjectRequest, downFile); // 关闭客户端(关闭后台线程) cosClient.shutdown(); }