|
19 | 19 |
|
20 | 20 | public class IndividualScenarioImpl extends IndividualScenario { |
21 | 21 |
|
22 | | - private final AcquireResourceAPI acquireResourceAPI; |
| 22 | + private final AcquireResourceAPI acquireResourceAPI; |
23 | 23 |
|
24 | | - private final QueryResourceAPI queryResourceAPI; |
| 24 | + private final QueryResourceAPI queryResourceAPI; |
25 | 25 |
|
26 | | - private final StartResourceAPI startResourceAPI; |
| 26 | + private final StartResourceAPI startResourceAPI; |
27 | 27 |
|
28 | | - private final UpdateResourceAPI updateResourceAPI; |
| 28 | + private final UpdateResourceAPI updateResourceAPI; |
29 | 29 |
|
30 | | - private final StopResourceAPI stopResourceAPI; |
| 30 | + private final StopResourceAPI stopResourceAPI; |
31 | 31 |
|
32 | | - public IndividualScenarioImpl(AcquireResourceAPI acquireResourceAPI, |
33 | | - QueryResourceAPI queryResourceAPI, |
34 | | - StartResourceAPI startResourceAPI, |
35 | | - UpdateResourceAPI updateResourceAPI, |
36 | | - StopResourceAPI stopResourceAPI) { |
37 | | - this.acquireResourceAPI = acquireResourceAPI; |
38 | | - this.queryResourceAPI = queryResourceAPI; |
39 | | - this.startResourceAPI = startResourceAPI; |
40 | | - this.updateResourceAPI = updateResourceAPI; |
41 | | - this.stopResourceAPI = stopResourceAPI; |
42 | | - } |
| 32 | + public IndividualScenarioImpl(AcquireResourceAPI acquireResourceAPI, |
| 33 | + QueryResourceAPI queryResourceAPI, |
| 34 | + StartResourceAPI startResourceAPI, |
| 35 | + UpdateResourceAPI updateResourceAPI, |
| 36 | + StopResourceAPI stopResourceAPI) { |
| 37 | + this.acquireResourceAPI = acquireResourceAPI; |
| 38 | + this.queryResourceAPI = queryResourceAPI; |
| 39 | + this.startResourceAPI = startResourceAPI; |
| 40 | + this.updateResourceAPI = updateResourceAPI; |
| 41 | + this.stopResourceAPI = stopResourceAPI; |
| 42 | + } |
| 43 | + |
| 44 | + @Override |
| 45 | + public Mono<AcquireResourceRes> acquire(String cname, String uid, |
| 46 | + AcquireIndividualResourceClientReq clientRequest) { |
| 47 | + |
| 48 | + StartResourceReq.StartClientRequest startParameter = null; |
| 49 | + if (clientRequest.getStartParameter() != null) { |
| 50 | + startParameter = StartResourceReq.StartClientRequest.builder() |
| 51 | + .token(clientRequest.getStartParameter().getToken()) |
| 52 | + .storageConfig(clientRequest.getStartParameter() |
| 53 | + .getStorageConfig()) |
| 54 | + .recordingConfig(clientRequest.getStartParameter() |
| 55 | + .getRecordingConfig()) |
| 56 | + .recordingFileConfig(clientRequest.getStartParameter() |
| 57 | + .getRecordingFileConfig()) |
| 58 | + .snapshotConfig(clientRequest.getStartParameter() |
| 59 | + .getSnapshotConfig()) |
| 60 | + .build(); |
| 61 | + } |
| 62 | + |
| 63 | + AcquireResourceReq req = AcquireResourceReq.builder() |
| 64 | + .cname(cname) |
| 65 | + .uid(uid) |
| 66 | + .clientRequest(AcquireResourceReq.ClientRequest.builder() |
| 67 | + .scene(0) |
| 68 | + .resourceExpiredHour(clientRequest.getResourceExpiredHour()) |
| 69 | + .regionAffinity(clientRequest.getRegionAffinity()) |
| 70 | + .excludeResourceIds(clientRequest.getExcludeResourceIds()) |
| 71 | + .startParameter(startParameter) |
| 72 | + .build()) |
| 73 | + .build(); |
| 74 | + |
| 75 | + return this.acquireResourceAPI.handle(req); |
| 76 | + } |
43 | 77 |
|
44 | | - @Override |
45 | | - public Mono<AcquireResourceRes> acquire(String cname, String uid, boolean enablePostpone, |
46 | | - AcquireIndividualResourceClientReq clientRequest) { |
47 | | - int scene = 0; |
| 78 | + @Override |
| 79 | + public Mono<StartResourceRes> start(String cname, String uid, String resourceId, |
| 80 | + StartIndividualRecordingClientReq clientRequest) { |
| 81 | + return this.startResourceAPI.handle(resourceId, CloudRecordingModeEnum.INDIVIDUAL, StartResourceReq |
| 82 | + .builder() |
| 83 | + .cname(cname) |
| 84 | + .uid(uid) |
| 85 | + .clientRequest(StartResourceReq.StartClientRequest.builder() |
| 86 | + .token(clientRequest.getToken()) |
| 87 | + .storageConfig(clientRequest.getStorageConfig()) |
| 88 | + .recordingConfig(clientRequest.getRecordingConfig()) |
| 89 | + .recordingFileConfig(clientRequest.getRecordingFileConfig()) |
| 90 | + .snapshotConfig(clientRequest.getSnapshotConfig()) |
| 91 | + .build()) |
| 92 | + .build()); |
| 93 | + } |
48 | 94 |
|
49 | | - if (enablePostpone) { |
50 | | - scene = 2; |
| 95 | + @Override |
| 96 | + public Mono<QueryIndividualRecordingResourceRes> query(String resourceId, String sid) { |
| 97 | + return this.queryResourceAPI.handle(resourceId, sid, CloudRecordingModeEnum.INDIVIDUAL) |
| 98 | + .handle((res, sink) -> { |
| 99 | + sink.next(QueryIndividualRecordingResourceRes.builder() |
| 100 | + .cname(res.getCname()) |
| 101 | + .uid(res.getUid()) |
| 102 | + .resourceId(res.getResourceId()) |
| 103 | + .sid(res.getSid()) |
| 104 | + .serverResponse(res.getQueryIndividualRecordingServerResponse()) |
| 105 | + .build()); |
| 106 | + |
| 107 | + sink.complete(); |
| 108 | + }); |
51 | 109 | } |
52 | 110 |
|
53 | | - StartResourceReq.StartClientRequest startParameter = null; |
54 | | - if (clientRequest.getStartParameter() != null) { |
55 | | - startParameter = StartResourceReq.StartClientRequest.builder() |
56 | | - .token(clientRequest.getStartParameter().getToken()) |
57 | | - .storageConfig(clientRequest.getStartParameter() |
58 | | - .getStorageConfig()) |
59 | | - .recordingConfig(clientRequest.getStartParameter() |
60 | | - .getRecordingConfig()) |
61 | | - .recordingFileConfig(clientRequest.getStartParameter() |
62 | | - .getRecordingFileConfig()) |
63 | | - .snapshotConfig(clientRequest.getStartParameter() |
64 | | - .getSnapshotConfig()) |
65 | | - .appsCollection(clientRequest.getStartParameter() |
66 | | - .getAppsCollection()) |
67 | | - .transcodeOptions(clientRequest.getStartParameter() |
68 | | - .getTranscodeOptions()) |
69 | | - .build(); |
| 111 | + @Override |
| 112 | + public Mono<QueryIndividualRecordingVideoScreenshotResourceRes> queryVideoScreenshot(String resourceId, |
| 113 | + String sid) { |
| 114 | + return this.queryResourceAPI.handle(resourceId, sid, CloudRecordingModeEnum.INDIVIDUAL) |
| 115 | + .handle((res, sink) -> { |
| 116 | + sink.next(QueryIndividualRecordingVideoScreenshotResourceRes.builder() |
| 117 | + .cname(res.getCname()) |
| 118 | + .uid(res.getUid()) |
| 119 | + .resourceId(res.getResourceId()) |
| 120 | + .sid(res.getSid()) |
| 121 | + .serverResponse(res |
| 122 | + .getQueryIndividualVideoScreenshotServerResponse()) |
| 123 | + .build()); |
| 124 | + |
| 125 | + sink.complete(); |
| 126 | + }); |
70 | 127 | } |
71 | 128 |
|
72 | | - AcquireResourceReq req = AcquireResourceReq.builder() |
73 | | - .cname(cname) |
74 | | - .uid(uid) |
75 | | - .clientRequest(AcquireResourceReq.ClientRequest.builder() |
76 | | - .scene(scene) |
77 | | - .resourceExpiredHour(clientRequest.getResourceExpiredHour()) |
78 | | - .regionAffinity(clientRequest.getRegionAffinity()) |
79 | | - .excludeResourceIds(clientRequest.getExcludeResourceIds()) |
80 | | - .startParameter(startParameter) |
81 | | - .build()) |
82 | | - .build(); |
83 | | - |
84 | | - return this.acquireResourceAPI.handle(req); |
85 | | - } |
86 | | - |
87 | | - @Override |
88 | | - public Mono<StartResourceRes> start(String cname, String uid, String resourceId, |
89 | | - StartIndividualRecordingClientReq clientRequest) { |
90 | | - return this.startResourceAPI.handle(resourceId, CloudRecordingModeEnum.INDIVIDUAL, StartResourceReq |
91 | | - .builder() |
92 | | - .cname(cname) |
93 | | - .uid(uid) |
94 | | - .clientRequest(StartResourceReq.StartClientRequest.builder() |
95 | | - .token(clientRequest.getToken()) |
96 | | - .storageConfig(clientRequest.getStorageConfig()) |
97 | | - .recordingConfig(clientRequest.getRecordingConfig()) |
98 | | - .recordingFileConfig(clientRequest.getRecordingFileConfig()) |
99 | | - .snapshotConfig(clientRequest.getSnapshotConfig()) |
100 | | - .appsCollection(clientRequest.getAppsCollection()) |
101 | | - .transcodeOptions(clientRequest.getTranscodeOptions()) |
102 | | - .build()) |
103 | | - .build()); |
104 | | - } |
105 | | - |
106 | | - @Override |
107 | | - public Mono<QueryIndividualRecordingResourceRes> query(String resourceId, String sid) { |
108 | | - return this.queryResourceAPI.handle(resourceId, sid, CloudRecordingModeEnum.INDIVIDUAL) |
109 | | - .handle((res, sink) -> { |
110 | | - sink.next(QueryIndividualRecordingResourceRes.builder() |
111 | | - .cname(res.getCname()) |
112 | | - .uid(res.getUid()) |
113 | | - .resourceId(res.getResourceId()) |
114 | | - .sid(res.getSid()) |
115 | | - .serverResponse(res.getQueryIndividualRecordingServerResponse()) |
116 | | - .build()); |
117 | | - |
118 | | - sink.complete(); |
119 | | - }); |
120 | | - } |
121 | | - |
122 | | - @Override |
123 | | - public Mono<QueryIndividualRecordingVideoScreenshotResourceRes> queryVideoScreenshot(String resourceId, |
124 | | - String sid) { |
125 | | - return this.queryResourceAPI.handle(resourceId, sid, CloudRecordingModeEnum.INDIVIDUAL) |
126 | | - .handle((res, sink) -> { |
127 | | - sink.next(QueryIndividualRecordingVideoScreenshotResourceRes.builder() |
128 | | - .cname(res.getCname()) |
129 | | - .uid(res.getUid()) |
130 | | - .resourceId(res.getResourceId()) |
131 | | - .sid(res.getSid()) |
132 | | - .serverResponse(res |
133 | | - .getQueryIndividualVideoScreenshotServerResponse()) |
134 | | - .build()); |
135 | | - |
136 | | - sink.complete(); |
137 | | - }); |
138 | | - } |
139 | | - |
140 | | - @Override |
141 | | - public Mono<UpdateResourceRes> update(String cname, String uid, String resourceId, String sid, |
142 | | - UpdateIndividualRecordingResourceClientReq clientRequest) { |
143 | | - return this.updateResourceAPI.handle(resourceId, sid, CloudRecordingModeEnum.INDIVIDUAL, |
144 | | - UpdateResourceReq.builder() |
145 | | - .cname(cname) |
146 | | - .uid(uid) |
147 | | - .clientRequest(UpdateResourceReq.ClientRequest.builder() |
148 | | - .streamSubscribe(clientRequest.getStreamSubscribe()) |
149 | | - .build()) |
150 | | - .build()); |
151 | | - } |
152 | | - |
153 | | - @Override |
154 | | - public Mono<StopResourceRes> stop(String cname, String uid, String resourceId, String sid, boolean asyncStop) { |
155 | | - return this.stopResourceAPI.handle(resourceId, sid, CloudRecordingModeEnum.INDIVIDUAL, |
156 | | - StopResourceReq.builder() |
157 | | - .cname(cname) |
158 | | - .uid(uid) |
159 | | - .clientRequest(StopResourceReq.StopClientRequest.builder() |
160 | | - .asyncStop(asyncStop) |
161 | | - .build()) |
162 | | - .build()); |
163 | | - } |
| 129 | + @Override |
| 130 | + public Mono<UpdateResourceRes> update(String cname, String uid, String resourceId, String sid, |
| 131 | + UpdateIndividualRecordingResourceClientReq clientRequest) { |
| 132 | + return this.updateResourceAPI.handle(resourceId, sid, CloudRecordingModeEnum.INDIVIDUAL, |
| 133 | + UpdateResourceReq.builder() |
| 134 | + .cname(cname) |
| 135 | + .uid(uid) |
| 136 | + .clientRequest(UpdateResourceReq.ClientRequest.builder() |
| 137 | + .streamSubscribe(clientRequest.getStreamSubscribe()) |
| 138 | + .build()) |
| 139 | + .build()); |
| 140 | + } |
| 141 | + |
| 142 | + @Override |
| 143 | + public Mono<StopResourceRes> stop(String cname, String uid, String resourceId, String sid, boolean asyncStop) { |
| 144 | + return this.stopResourceAPI.handle(resourceId, sid, CloudRecordingModeEnum.INDIVIDUAL, |
| 145 | + StopResourceReq.builder() |
| 146 | + .cname(cname) |
| 147 | + .uid(uid) |
| 148 | + .clientRequest(StopResourceReq.StopClientRequest.builder() |
| 149 | + .asyncStop(asyncStop) |
| 150 | + .build()) |
| 151 | + .build()); |
| 152 | + } |
164 | 153 | } |
0 commit comments