1 package org.apache.maven.scm.provider.svn.svnexe.command.remove;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.maven.scm.ScmFile;
23 import org.apache.maven.scm.ScmFileStatus;
24 import org.apache.maven.scm.util.AbstractConsumer;
25
26 import java.util.ArrayList;
27 import java.util.List;
28
29
30
31
32
33
34 public class SvnRemoveConsumer
35 extends AbstractConsumer
36 {
37 private final List<ScmFile> removedFiles = new ArrayList<>();
38
39
40
41
42
43
44 public void consumeLine( String line )
45 {
46 if ( line.length() <= 3 )
47 {
48 if ( logger.isWarnEnabled() )
49 {
50 logger.warn( "Unexpected input, the line must be at least three characters long. Line: '"
51 + line + "'." );
52 }
53
54 return;
55 }
56
57 String statusString = line.substring( 0, 1 );
58
59 String file = line.substring( 3 ).trim();
60
61 ScmFileStatus status;
62
63 if ( statusString.equals( "D" ) )
64 {
65 status = ScmFileStatus.DELETED;
66 }
67 else
68 {
69 if ( logger.isInfoEnabled() )
70 {
71 logger.info( "Unknown file status: '" + statusString + "'." );
72 }
73
74 return;
75 }
76
77 removedFiles.add( new ScmFile( file, status ) );
78 }
79
80 public List<ScmFile> getRemovedFiles()
81 {
82 return removedFiles;
83 }
84
85 }