Skip to content

Commit 777902d

Browse files
committed
wip
1 parent 76799c5 commit 777902d

31 files changed

+250
-124
lines changed

modules/core/core-api/src/main/java/com/enonic/xp/content/CompareContentResult.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package com.enonic.xp.content;
22

33
import com.enonic.xp.annotation.PublicApi;
4-
import com.enonic.xp.node.CompareStatus;
54

65
@PublicApi
76
public final class CompareContentResult

modules/core/core-api/src/main/java/com/enonic/xp/node/CompareStatus.java renamed to modules/core/core-api/src/main/java/com/enonic/xp/content/CompareStatus.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.enonic.xp.node;
1+
package com.enonic.xp.content;
22

33
import com.enonic.xp.annotation.PublicApi;
44

modules/core/core-api/src/main/java/com/enonic/xp/node/NodeComparison.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.enonic.xp.node;
22

33
import com.enonic.xp.annotation.PublicApi;
4+
import com.enonic.xp.content.CompareStatus;
45

56
@PublicApi
67
public final class NodeComparison

modules/core/core-api/src/main/java/com/enonic/xp/node/NodeComparisons.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import java.util.stream.Collectors;
99

1010
import com.enonic.xp.annotation.PublicApi;
11+
import com.enonic.xp.content.CompareStatus;
1112

1213
@PublicApi
1314
public final class NodeComparisons

modules/core/core-api/src/main/java/com/enonic/xp/node/NodeService.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,7 @@ public interface NodeService
1717

1818
MoveNodeResult move( MoveNodeParams params );
1919

20-
PushNodesResult push( NodeIds ids, Branch target );
21-
22-
PushNodesResult push( NodeIds ids, Branch target, PushNodesListener pushListener );
20+
PushNodesResult push( PushNodeParams params );
2321

2422
DeleteNodeResult delete( DeleteNodeParams deleteNodeParams );
2523

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
package com.enonic.xp.node;
2+
3+
import java.util.Objects;
4+
5+
import com.enonic.xp.branch.Branch;
6+
7+
public final class PushNodeParams
8+
{
9+
private final NodeIds ids;
10+
11+
private final Branch target;
12+
13+
private final Attributes versionAttributes;
14+
15+
private final PushNodesListener pushListener;
16+
17+
private final NodeDataProcessor processor;
18+
19+
private PushNodeParams( final Builder builder )
20+
{
21+
this.ids = Objects.requireNonNull( builder.ids, "ids is required" );
22+
this.target = Objects.requireNonNull( builder.target, "target is required" );
23+
this.versionAttributes = builder.versionAttributes;
24+
this.pushListener = builder.pushListener;
25+
this.processor = builder.processor;
26+
}
27+
28+
public NodeIds getIds()
29+
{
30+
return ids;
31+
}
32+
33+
public Branch getTarget()
34+
{
35+
return target;
36+
}
37+
38+
public PushNodesListener getPushListener()
39+
{
40+
return pushListener;
41+
}
42+
43+
public NodeDataProcessor getProcessor()
44+
{
45+
return processor;
46+
}
47+
48+
public static Builder create()
49+
{
50+
return new Builder();
51+
}
52+
53+
public Attributes getVersionAttributes()
54+
{
55+
return versionAttributes;
56+
}
57+
58+
public static class Builder
59+
{
60+
private NodeIds ids;
61+
62+
private Branch target;
63+
64+
private Attributes versionAttributes;
65+
66+
private PushNodesListener pushListener;
67+
68+
private NodeDataProcessor processor;
69+
70+
private Builder()
71+
{
72+
}
73+
74+
public Builder ids( final NodeIds ids )
75+
{
76+
this.ids = ids;
77+
return this;
78+
}
79+
80+
public Builder target( final Branch target )
81+
{
82+
this.target = target;
83+
return this;
84+
}
85+
86+
public Builder publishListener( final PushNodesListener pushListener )
87+
{
88+
this.pushListener = pushListener;
89+
return this;
90+
}
91+
92+
public Builder processor( final NodeDataProcessor processor )
93+
{
94+
this.processor = processor;
95+
return this;
96+
}
97+
98+
public Builder versionAttributes( final Attributes versionAttributes )
99+
{
100+
this.versionAttributes = versionAttributes;
101+
return this;
102+
}
103+
104+
public PushNodeParams build()
105+
{
106+
return new PushNodeParams( this );
107+
}
108+
}
109+
}

modules/core/core-api/src/main/java/com/enonic/xp/node/SyncWorkResolverParams.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55

66
import com.enonic.xp.annotation.PublicApi;
77
import com.enonic.xp.branch.Branch;
8+
import com.enonic.xp.content.CompareStatus;
89

910
@PublicApi
1011
public final class SyncWorkResolverParams

modules/core/core-content/src/main/java/com/enonic/xp/core/impl/content/PublishContentCommand.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import com.enonic.xp.node.NodeCommitEntry;
2020
import com.enonic.xp.node.NodeId;
2121
import com.enonic.xp.node.NodeIds;
22+
import com.enonic.xp.node.PushNodeParams;
2223
import com.enonic.xp.node.PushNodeResult;
2324
import com.enonic.xp.node.PushNodesResult;
2425
import com.enonic.xp.node.RoutableNodeVersionId;
@@ -102,7 +103,8 @@ private void doPush( final ContentIds ids )
102103
private PushNodesResult doPushRoot()
103104
{
104105
final Node contentRootNode = nodeService.getByPath( ContentConstants.CONTENT_ROOT_PATH );
105-
return nodeService.push( NodeIds.from( contentRootNode.id() ), ContentConstants.BRANCH_MASTER );
106+
final NodeIds ids = NodeIds.from( contentRootNode.id() );
107+
return nodeService.push( PushNodeParams.create().ids( ids ).target( ContentConstants.BRANCH_MASTER ).build() );
106108
}
107109

108110
private CompareContentResults getSyncWork()
@@ -143,12 +145,14 @@ private void doPushNodes( final NodeIds nodesToPush )
143145
{
144146
setPublishInfo( nodesToPush );
145147

146-
final PushNodesResult pushNodesResult = nodeService.push( nodesToPush, ContentConstants.BRANCH_MASTER, count -> {
147-
if ( publishContentListener != null )
148-
{
149-
publishContentListener.contentPushed( count );
150-
}
151-
} );
148+
final PushNodeParams.Builder pushNodeParams =
149+
PushNodeParams.create().ids( nodesToPush ).target( ContentConstants.BRANCH_MASTER );
150+
if ( publishContentListener != null )
151+
{
152+
pushNodeParams.publishListener( publishContentListener::contentPushed );
153+
}
154+
155+
final PushNodesResult pushNodesResult = nodeService.push( pushNodeParams.build() );
152156

153157
commitPushedNodes( pushNodesResult.getSuccessful() );
154158

@@ -218,10 +222,6 @@ private void setPublishInfo( final NodeIds nodesToPush )
218222
}
219223

220224
} ).id( id ).build() );
221-
if ( publishContentListener != null )
222-
{
223-
publishContentListener.contentPushed( 1 );
224-
}
225225
}
226226
}
227227

modules/core/core-content/src/main/java/com/enonic/xp/core/impl/content/ResolveContentsToBePublishedCommand.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
import com.enonic.xp.archive.ArchiveConstants;
77
import com.enonic.xp.content.CompareContentResults;
8-
import com.enonic.xp.node.CompareStatus;
8+
import com.enonic.xp.content.CompareStatus;
99
import com.enonic.xp.content.ContentConstants;
1010
import com.enonic.xp.content.ContentId;
1111
import com.enonic.xp.content.ContentIds;

modules/core/core-content/src/main/java/com/enonic/xp/core/impl/content/ResolveRequiredDependenciesCommand.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import java.util.Collection;
44
import java.util.Objects;
55

6-
import com.enonic.xp.node.CompareStatus;
6+
import com.enonic.xp.content.CompareStatus;
77
import com.enonic.xp.content.ContentConstants;
88
import com.enonic.xp.content.ContentId;
99
import com.enonic.xp.content.ContentIds;

0 commit comments

Comments
 (0)