60
60
import org .eclipse .aether .repository .RepositoryPolicy ;
61
61
import org .eclipse .aether .spi .artifact .generator .ArtifactGenerator ;
62
62
import org .eclipse .aether .spi .artifact .generator .ArtifactGeneratorFactory ;
63
+ import org .eclipse .aether .spi .artifact .transformer .ArtifactTransformer ;
63
64
import org .eclipse .aether .spi .connector .ArtifactUpload ;
64
65
import org .eclipse .aether .spi .connector .MetadataDownload ;
65
66
import org .eclipse .aether .spi .connector .MetadataUpload ;
@@ -99,6 +100,8 @@ public class DefaultDeployer implements Deployer {
99
100
100
101
private final Map <String , MetadataGeneratorFactory > metadataFactories ;
101
102
103
+ private final Map <String , ArtifactTransformer > artifactTransformers ;
104
+
102
105
private final SyncContextFactory syncContextFactory ;
103
106
104
107
private final OfflineController offlineController ;
@@ -113,6 +116,7 @@ public DefaultDeployer(
113
116
UpdateCheckManager updateCheckManager ,
114
117
Map <String , ArtifactGeneratorFactory > artifactFactories ,
115
118
Map <String , MetadataGeneratorFactory > metadataFactories ,
119
+ Map <String , ArtifactTransformer > artifactTransformers ,
116
120
SyncContextFactory syncContextFactory ,
117
121
OfflineController offlineController ) {
118
122
this .pathProcessor = requireNonNull (pathProcessor , "path processor cannot be null" );
@@ -125,6 +129,7 @@ public DefaultDeployer(
125
129
this .updateCheckManager = requireNonNull (updateCheckManager , "update check manager cannot be null" );
126
130
this .artifactFactories = Collections .unmodifiableMap (artifactFactories );
127
131
this .metadataFactories = Collections .unmodifiableMap (metadataFactories );
132
+ this .artifactTransformers = Collections .unmodifiableMap (artifactTransformers );
128
133
this .syncContextFactory = requireNonNull (syncContextFactory , "sync context factory cannot be null" );
129
134
this .offlineController = requireNonNull (offlineController , "offline controller cannot be null" );
130
135
}
@@ -142,6 +147,9 @@ public DeployResult deploy(RepositorySystemSession session, DeployRequest reques
142
147
e );
143
148
}
144
149
150
+ for (ArtifactTransformer transformer : artifactTransformers .values ()) {
151
+ request = transformer .transformDeployArtifacts (session , request );
152
+ }
145
153
try (SyncContext syncContext = syncContextFactory .newInstance (session , true )) {
146
154
return deploy (syncContext , session , request );
147
155
}
0 commit comments