Search in sources :

Example 1 with ReplicationRule

use of com.aliyun.oss.model.ReplicationRule in project aliyun-oss-java-sdk by aliyun.

the class BucketReplicationTest method testNormalAddBucketReplicationWithAction.

@Test
public void testNormalAddBucketReplicationWithAction() throws ParseException {
    final String bucketName = "test-bucket-replication-action-10";
    try {
        ossClient.createBucket(bucketName);
        AddBucketReplicationRequest request = new AddBucketReplicationRequest(bucketName);
        request.setTargetBucketName(targetBucketName);
        request.setTargetBucketLocation(targetBucketLoc);
        List<String> prefixes = new ArrayList<String>();
        prefixes.add("image/");
        prefixes.add("video");
        request.setObjectPrefixList(prefixes);
        List<ReplicationAction> actions = new ArrayList<ReplicationAction>();
        actions.add(ReplicationAction.PUT);
        actions.add(ReplicationAction.DELETE);
        request.setReplicationActionList(actions);
        ossClient.addBucketReplication(request);
        List<ReplicationRule> rules = ossClient.getBucketReplication(bucketName);
        Assert.assertEquals(rules.size(), 1);
        ReplicationRule r0 = rules.get(0);
        Assert.assertEquals(r0.getReplicationRuleID().length(), "d6a8bfe3-56f6-42dd-9e7f-b4301d99b0ed".length());
        Assert.assertEquals(r0.getTargetBucketName(), targetBucketName);
        Assert.assertEquals(r0.getTargetBucketLocation(), targetBucketLoc);
        Assert.assertEquals(r0.isEnableHistoricalObjectReplication(), true);
        Assert.assertEquals(r0.getReplicationStatus(), ReplicationStatus.Starting);
        Assert.assertEquals(r0.getObjectPrefixList().size(), 2);
        Assert.assertEquals(r0.getReplicationActionList().size(), 2);
        ossClient.deleteBucketReplication(new DeleteBucketReplicationRequest(bucketName, r0.getReplicationRuleID()));
    } catch (OSSException e) {
        e.printStackTrace();
        Assert.fail(e.getMessage());
    } finally {
        ossClient.deleteBucket(bucketName);
    }
}
Also used : AddBucketReplicationRequest(com.aliyun.oss.model.AddBucketReplicationRequest) ArrayList(java.util.ArrayList) ReplicationAction(com.aliyun.oss.model.AddBucketReplicationRequest.ReplicationAction) OSSException(com.aliyun.oss.OSSException) DeleteBucketReplicationRequest(com.aliyun.oss.model.DeleteBucketReplicationRequest) ReplicationRule(com.aliyun.oss.model.ReplicationRule) Test(org.junit.Test)

Example 2 with ReplicationRule

use of com.aliyun.oss.model.ReplicationRule in project aliyun-oss-java-sdk by aliyun.

the class BucketReplicationTest method testNormalAddBucketReplicationWithRuleID.

@Test
public void testNormalAddBucketReplicationWithRuleID() throws ParseException {
    final String bucketName = "test-bucket-replication-ruleid-3";
    final String repRuleID = "~`!@#$%^&*()-_+=|\\[]{}<>:;\"',./?";
    try {
        ossClient.createBucket(bucketName);
        AddBucketReplicationRequest request = new AddBucketReplicationRequest(bucketName);
        request.setReplicationRuleID(repRuleID);
        request.setTargetBucketName(targetBucketName);
        request.setTargetBucketLocation(targetBucketLoc);
        request.setEnableHistoricalObjectReplication(false);
        ossClient.addBucketReplication(request);
        List<ReplicationRule> rules = ossClient.getBucketReplication(bucketName);
        Assert.assertEquals(rules.size(), 1);
        ReplicationRule r0 = rules.get(0);
        Assert.assertEquals(r0.getReplicationRuleID(), repRuleID);
        Assert.assertEquals(r0.getTargetBucketName(), targetBucketName);
        Assert.assertEquals(r0.getTargetBucketLocation(), targetBucketLoc);
        Assert.assertEquals(r0.isEnableHistoricalObjectReplication(), false);
        Assert.assertEquals(r0.getReplicationStatus(), ReplicationStatus.Starting);
        BucketReplicationProgress process = ossClient.getBucketReplicationProgress(bucketName, repRuleID);
        Assert.assertEquals(process.getReplicationRuleID(), repRuleID);
        Assert.assertEquals(process.getTargetBucketName(), targetBucketName);
        Assert.assertEquals(process.getTargetBucketLocation(), targetBucketLoc);
        Assert.assertEquals(process.getReplicationStatus(), ReplicationStatus.Starting);
        Assert.assertEquals(process.getHistoricalObjectProgress(), Float.valueOf(0));
        ossClient.deleteBucketReplication(new DeleteBucketReplicationRequest(bucketName, repRuleID));
    } catch (OSSException e) {
        Assert.fail(e.getMessage());
    } finally {
        ossClient.deleteBucket(bucketName);
    }
}
Also used : BucketReplicationProgress(com.aliyun.oss.model.BucketReplicationProgress) AddBucketReplicationRequest(com.aliyun.oss.model.AddBucketReplicationRequest) OSSException(com.aliyun.oss.OSSException) DeleteBucketReplicationRequest(com.aliyun.oss.model.DeleteBucketReplicationRequest) ReplicationRule(com.aliyun.oss.model.ReplicationRule) Test(org.junit.Test)

Example 3 with ReplicationRule

use of com.aliyun.oss.model.ReplicationRule in project aliyun-oss-java-sdk by aliyun.

the class BucketReplicationTest method testNormalDeleteBucketReplication.

@Test
public void testNormalDeleteBucketReplication() throws ParseException {
    final String bucketName = "test-bucket-delete-replication";
    final String repRuleID = "test-replication-ruleid";
    try {
        ossClient.createBucket(bucketName);
        AddBucketReplicationRequest request = new AddBucketReplicationRequest(bucketName);
        request.setReplicationRuleID(repRuleID);
        request.setTargetBucketName(targetBucketName);
        request.setTargetBucketLocation(targetBucketLoc);
        ossClient.addBucketReplication(request);
        List<ReplicationRule> rules = ossClient.getBucketReplication(bucketName);
        Assert.assertEquals(rules.size(), 1);
        ReplicationRule r0 = rules.get(0);
        Assert.assertEquals(r0.getReplicationStatus(), ReplicationStatus.Starting);
        ossClient.deleteBucketReplication(bucketName, repRuleID);
        rules = ossClient.getBucketReplication(bucketName);
        Assert.assertEquals(rules.size(), 1);
        r0 = rules.get(0);
        Assert.assertEquals(r0.getReplicationStatus(), ReplicationStatus.Closing);
    } catch (OSSException e) {
        Assert.fail(e.getMessage());
    } finally {
        ossClient.deleteBucket(bucketName);
    }
}
Also used : AddBucketReplicationRequest(com.aliyun.oss.model.AddBucketReplicationRequest) OSSException(com.aliyun.oss.OSSException) ReplicationRule(com.aliyun.oss.model.ReplicationRule) Test(org.junit.Test)

Example 4 with ReplicationRule

use of com.aliyun.oss.model.ReplicationRule in project aliyun-oss-java-sdk by aliyun.

the class BucketReplicationTest method testNormalGetBucketReplicationProgress.

@Test
public void testNormalGetBucketReplicationProgress() throws ParseException {
    final String bucketName = "test-bucket-get-replication-progress";
    final String repRuleID = "test-replication-progress-ruleid";
    try {
        ossClient.createBucket(bucketName);
        AddBucketReplicationRequest request = new AddBucketReplicationRequest(bucketName);
        request.setReplicationRuleID(repRuleID);
        request.setTargetBucketName(targetBucketName);
        request.setTargetBucketLocation(targetBucketLoc);
        ossClient.addBucketReplication(request);
        List<ReplicationRule> rules = ossClient.getBucketReplication(bucketName);
        Assert.assertEquals(rules.size(), 1);
        ReplicationRule r0 = rules.get(0);
        Assert.assertEquals(r0.getReplicationRuleID(), repRuleID);
        Assert.assertEquals(r0.getTargetBucketName(), targetBucketName);
        Assert.assertEquals(r0.getTargetBucketLocation(), targetBucketLoc);
        Assert.assertEquals(r0.isEnableHistoricalObjectReplication(), true);
        Assert.assertEquals(r0.getReplicationStatus(), ReplicationStatus.Starting);
        BucketReplicationProgress process = ossClient.getBucketReplicationProgress(bucketName, repRuleID);
        Assert.assertEquals(process.getReplicationRuleID(), repRuleID);
        Assert.assertEquals(process.getTargetBucketName(), targetBucketName);
        Assert.assertEquals(process.getTargetBucketLocation(), targetBucketLoc);
        Assert.assertEquals(process.getReplicationStatus(), ReplicationStatus.Starting);
        Assert.assertEquals(process.isEnableHistoricalObjectReplication(), true);
        Assert.assertEquals(process.getHistoricalObjectProgress(), Float.valueOf(0));
        Assert.assertEquals(process.getNewObjectProgress(), null);
        ossClient.deleteBucketReplication(new DeleteBucketReplicationRequest(bucketName, repRuleID));
    } catch (OSSException e) {
        Assert.fail(e.getMessage());
    } finally {
        ossClient.deleteBucket(bucketName);
    }
}
Also used : BucketReplicationProgress(com.aliyun.oss.model.BucketReplicationProgress) AddBucketReplicationRequest(com.aliyun.oss.model.AddBucketReplicationRequest) OSSException(com.aliyun.oss.OSSException) DeleteBucketReplicationRequest(com.aliyun.oss.model.DeleteBucketReplicationRequest) ReplicationRule(com.aliyun.oss.model.ReplicationRule) Test(org.junit.Test)

Example 5 with ReplicationRule

use of com.aliyun.oss.model.ReplicationRule in project aliyun-oss-java-sdk by aliyun.

the class BucketReplicationTest method testNormalAddBucketReplicationWithDefaultRuleID.

@Test
public void testNormalAddBucketReplicationWithDefaultRuleID() throws ParseException {
    final String bucketName = "test-bucket-replication-default-ruleid";
    try {
        ossClient.createBucket(bucketName);
        AddBucketReplicationRequest request = new AddBucketReplicationRequest(bucketName);
        request.setTargetBucketName(targetBucketName);
        request.setTargetBucketLocation(targetBucketLoc);
        ossClient.addBucketReplication(request);
        List<ReplicationRule> rules = ossClient.getBucketReplication(bucketName);
        Assert.assertEquals(rules.size(), 1);
        ReplicationRule r0 = rules.get(0);
        Assert.assertEquals(r0.getReplicationRuleID().length(), "d6a8bfe3-56f6-42dd-9e7f-b4301d99b0ed".length());
        Assert.assertEquals(r0.getTargetBucketName(), targetBucketName);
        Assert.assertEquals(r0.getTargetBucketLocation(), targetBucketLoc);
        Assert.assertEquals(r0.isEnableHistoricalObjectReplication(), true);
        Assert.assertEquals(r0.getReplicationStatus(), ReplicationStatus.Starting);
        ossClient.deleteBucketReplication(new DeleteBucketReplicationRequest(bucketName, r0.getReplicationRuleID()));
    } catch (OSSException e) {
        Assert.fail(e.getMessage());
    } finally {
        ossClient.deleteBucket(bucketName);
    }
}
Also used : AddBucketReplicationRequest(com.aliyun.oss.model.AddBucketReplicationRequest) OSSException(com.aliyun.oss.OSSException) DeleteBucketReplicationRequest(com.aliyun.oss.model.DeleteBucketReplicationRequest) ReplicationRule(com.aliyun.oss.model.ReplicationRule) Test(org.junit.Test)

Aggregations

ReplicationRule (com.aliyun.oss.model.ReplicationRule)9 OSSException (com.aliyun.oss.OSSException)8 AddBucketReplicationRequest (com.aliyun.oss.model.AddBucketReplicationRequest)8 Test (org.junit.Test)8 DeleteBucketReplicationRequest (com.aliyun.oss.model.DeleteBucketReplicationRequest)7 BucketReplicationProgress (com.aliyun.oss.model.BucketReplicationProgress)4 ReplicationAction (com.aliyun.oss.model.AddBucketReplicationRequest.ReplicationAction)2 ArrayList (java.util.ArrayList)2 ResponseParseException (com.aliyun.oss.common.parser.ResponseParseException)1 GetBucketReplicationProgressRequest (com.aliyun.oss.model.GetBucketReplicationProgressRequest)1 ParseException (java.text.ParseException)1 Element (org.jdom.Element)1 JDOMParseException (org.jdom.input.JDOMParseException)1