@@ -80,10 +80,10 @@ private ProcessArtifactResult<Void> processArtifacts(List<ProjectArtifact> proje
80
80
ProjectArtifactType artifactType = projectArtifact .getArtifactType ();
81
81
switch (artifactType ) {
82
82
case SOURCE_CODE :
83
- writeSourceCode (projectArtifact , projectPath );
83
+ writeCode (projectArtifact , projectPath , false );
84
84
break ;
85
85
case TEST_CODE :
86
- writeTestCode (projectArtifact , projectPath );
86
+ writeCode (projectArtifact , projectPath , true );
87
87
break ;
88
88
case MAVEN_DEPENDENCIES :
89
89
writeMavenDependencies (projectArtifact , projectPath , terminalMessage );
@@ -110,29 +110,24 @@ private ProcessArtifactResult<Void> processArtifacts(List<ProjectArtifact> proje
110
110
return processArtifactResult ;
111
111
}
112
112
113
- private void writeSourceCode (ProjectArtifact projectArtifact , Path projectPath ) throws IOException {
113
+ private void writeCode (ProjectArtifact projectArtifact , Path projectPath , boolean isTest ) throws IOException {
114
114
String packageName = this .calculatePackageForArtifact (projectArtifact );
115
115
ClassNameExtractor classNameExtractor = new ClassNameExtractor ();
116
116
Optional <String > className = classNameExtractor .extractClassName (projectArtifact .getText ());
117
117
if (className .isPresent ()) {
118
- Path output = createSourceFile (projectPath , packageName , className .get () + ".java" );
118
+ Path output = createCodeFile (projectPath , packageName , className .get () + ".java" , isTest );
119
119
try (Writer writer = new BufferedWriter (new FileWriter (output .toFile ()))) {
120
120
writer .write (projectArtifact .getText ());
121
121
}
122
122
}
123
123
}
124
124
125
- private void writeTestCode (ProjectArtifact projectArtifact , Path projectPath ) throws IOException {
126
- // TODO parameterize better to reduce code duplication
127
- String packageName = this .calculatePackageForArtifact (projectArtifact );
128
- ClassNameExtractor classNameExtractor = new ClassNameExtractor ();
129
- Optional <String > className = classNameExtractor .extractClassName (projectArtifact .getText ());
130
- if (className .isPresent ()) {
131
- Path output = createTestFile (projectPath , packageName , className .get () + ".java" );
132
- try (Writer writer = new BufferedWriter (new FileWriter (output .toFile ()))) {
133
- writer .write (projectArtifact .getText ());
134
- }
135
- }
125
+ private Path createCodeFile (Path projectPath , String packageName , String fileName , boolean isTest )
126
+ throws IOException {
127
+ Path sourceFile = isTest ? resolveTestFile (projectPath , packageName , fileName )
128
+ : resolveSourceFile (projectPath , packageName , fileName );
129
+ createFile (sourceFile );
130
+ return sourceFile ;
136
131
}
137
132
138
133
private void writeMavenDependencies (ProjectArtifact projectArtifact , Path projectPath ,
@@ -276,18 +271,6 @@ private static String extractFilenameFromComment(String content) {
276
271
return null ;
277
272
}
278
273
279
- private Path createSourceFile (Path projectPath , String packageName , String fileName ) throws IOException {
280
- Path sourceFile = resolveSourceFile (projectPath , packageName , fileName );
281
- createFile (sourceFile );
282
- return sourceFile ;
283
- }
284
-
285
- private Path createTestFile (Path projectPath , String packageName , String fileName ) throws IOException {
286
- Path sourceFile = resolveTestFile (projectPath , packageName , fileName );
287
- createFile (sourceFile );
288
- return sourceFile ;
289
- }
290
-
291
274
public Path resolveSourceFile (Path projectPath , String packageName , String fileName ) {
292
275
Path sourceDirectory = projectPath .resolve ("src" ).resolve ("main" ).resolve ("java" );
293
276
return resolvePackage (sourceDirectory , packageName ).resolve (fileName );
0 commit comments