描述
订阅通道在未启动,启动失败,正常,异常状态,可以修改订阅对象
- 当订阅通道状态为正常时,用户调用这个接口修改订阅对象后,数据传输服务直接调用启动接口,启动订阅通道
- 当订阅通道状态为未启动、启动失败或异常时,用户调用这个接口修改订阅对象后,如果需要启动订阅通道,还需要调用启动接口启动订阅通道
请求参数
参数说明 | 数据类型 | 是否必须 | 参数说明 |
---|---|---|---|
Action | String | 是 | 固定取值为:ModifySubscriptionObject |
SubscriptionInstanceId | String | 是 | 需要修改订阅对象的订阅通道ID |
SubscriptionObjects | List | 是 | 修改后的订阅对象列表,SubscriptionObject定义详见订阅对象定义 |
SubscriptionObject参数定义
SubscriptionObject 的定义格式为 JSON字符串,且对象配置支持一定的正则表达式。
SubscriptionObject的定义如下:
SubscriptionObject:{
DBName:"待订阅的库名",
TableIncludes:[{
TableName: "待迁移表表名"
}]
}
其中:SubscriptionObject为订阅对象白名单。
各种对象名的定义可以支持如下的正则表达式:
- 点号 . 表示匹配除’\r\n’之外的任何单个字符
- 星号 * 表示匹配前面子表达式任意次,h.*llo匹配hllo, heeeello等字符串
- 问号 ?表示匹配前面子表达式零次或1次,h.?llo 匹配hllo,hello,但不能匹配haello
- [characters] 字符集合,表示匹配方括号内任意一个字符,例如h[aello]匹配hallo, hello
- [^characters] 负值字符集合,表示不匹配方括号内任意一个字符,例如h[^ae]llo匹配hcllo,hdllo,但是不能匹配hallo, hello
- [character1-character2] 字符范围,表示character1-character2范围内的字符都可以匹配,例如[0-9],[a-z]
返回参数
参数名称 | 数据类型 | 参数说明 |
---|---|---|
RequestId | String | 请求的唯一标识 |
Success | String | 请求是否成功,返回true或者false |
ErrCode | String | 错误码 |
ErrMessage | String | 错误详细内容 |
示例
下面简单演示通过JAVA SDK 查看迁移任务详情的示例:
private void modifyObject(String jobId) throws ClientException {
ModifySubscriptionObjectRequest request = new ModifySubscriptionObjectRequest();
request.setSubscriptionInstanceId(jobId);
String sbeObject = "[{\n"
+ "\"DBName\":\"miyuntest\","
+ "\"TableIncludes\":["
+ "{\"TableName\":\"t1\"},"
+ "{\"TableName\":\"t2\"},"
+ "{\"TableName\":\"t3\"}"
+ "]"
+ "}]";
request.setSubscriptionObject(sbeObject);
ModifySubscriptionObjectResponse response = client.getAcsResponse(request);
System.out.println(response.getSuccess());
}
原创文章,作者:网友投稿,如若转载,请注明出处:https://www.cloudads.cn/archives/34007.html