2828import oracle .kubernetes .operator .work .NextAction ;
2929import oracle .kubernetes .operator .work .Packet ;
3030import oracle .kubernetes .operator .work .Step ;
31- import oracle .kubernetes .operator .work .Step .StepAndPacket ;
3231import oracle .kubernetes .weblogic .domain .model .ClusterCondition ;
3332import oracle .kubernetes .weblogic .domain .model .ClusterResource ;
3433import oracle .kubernetes .weblogic .domain .model .ClusterStatus ;
@@ -59,15 +58,6 @@ public static Step createClusterResourceStatusUpdaterStep(Step next) {
5958 return new ClusterResourceStatusUpdaterStep (next );
6059 }
6160
62- private static Step createUpdateClusterResourceStatusSteps (Packet packet ,
63- Collection <ClusterResource > clusterResources ) {
64- List <StepAndPacket > result = clusterResources .stream ()
65- .filter (res -> createContext (packet , res ).isClusterResourceStatusChanged ())
66- .map (res -> createContext (packet , res ).createReplaceClusterResourceStatusStep ()).collect (
67- Collectors .toList ());
68- return result .isEmpty () ? null : new RunInParallelStep (result );
69- }
70-
7161 private static ReplaceClusterStatusContext createContext (Packet packet , ClusterResource resource ) {
7262 return new ReplaceClusterStatusContext (packet , resource );
7363 }
@@ -93,6 +83,15 @@ public NextAction apply(Packet packet) {
9383 return doNext (chainStep (step , getNext ()), packet );
9484 }
9585
86+ private static Step createUpdateClusterResourceStatusSteps (Packet packet ,
87+ Collection <ClusterResource > clusterResources ) {
88+ List <StepAndPacket > result = clusterResources .stream ()
89+ .filter (res -> createContext (packet , res ).isClusterResourceStatusChanged ())
90+ .map (res -> new StepAndPacket (createContext (packet , res ).createReplaceClusterResourceStatusStep (), packet ))
91+ .collect (Collectors .toList ());
92+ return result .isEmpty () ? null : new RunInParallelStep (result );
93+ }
94+
9695 private static Step chainStep (Step one , Step two ) {
9796 if (one == null ) {
9897 return two ;
@@ -210,7 +209,7 @@ boolean isClusterResourceStatusChanged() {
210209 return !Objects .equals (getNewStatus (), resource .getStatus ());
211210 }
212211
213- private StepAndPacket createReplaceClusterResourceStatusStep () {
212+ private Step createReplaceClusterResourceStatusStep () {
214213 LOGGER .fine (MessageKeys .CLUSTER_STATUS , getClusterResourceName (),
215214 getNewStatus ());
216215
@@ -229,7 +228,7 @@ private StepAndPacket createReplaceClusterResourceStatusStep() {
229228 .map (ncs -> getClusterStatusConditionEvents (ncs .getConditions ())).orElse (Collections .emptyList ())
230229 .stream ().map (EventHelper ::createClusterResourceEventStep ).forEach (result ::add );
231230
232- return new StepAndPacket ( Step .chain (result ), packet );
231+ return Step .chain (result );
233232 }
234233
235234 private List <EventData > getClusterStatusConditionEvents (List <ClusterCondition > conditions ) {
@@ -317,7 +316,7 @@ public NextAction apply(Packet packet) {
317316 // Get the ClusterResource, that was refreshed, from DomainPresenceInfo.
318317 DomainPresenceInfo info = DomainPresenceInfo .fromPacket (packet ).orElseThrow ();
319318 ClusterResource res = info .getClusterResource (clusterName );
320- return doNext (createUpdateClusterResourceStatusSteps (packet , Collections . singletonList ( res )), packet );
319+ return doNext (createContext (packet , res ). createReplaceClusterResourceStatusStep ( ), packet );
321320 }
322321 }
323322}
0 commit comments