1
2
3
4
5
6
7
8 package org.apache.maven.plugin.invoker.model.io.xpp3;
9
10
11
12
13
14 import java.io.OutputStream;
15 import java.io.Writer;
16 import java.text.DateFormat;
17 import java.util.Iterator;
18 import java.util.Locale;
19 import org.apache.maven.plugin.invoker.model.BuildJob;
20 import org.codehaus.plexus.util.xml.pull.MXSerializer;
21 import org.codehaus.plexus.util.xml.pull.XmlSerializer;
22
23
24
25
26
27
28 @SuppressWarnings( "all" )
29 public class BuildJobXpp3Writer
30 {
31
32
33
34
35
36
37
38
39 private static final String NAMESPACE = null;
40
41
42
43
44
45
46
47
48
49
50
51
52
53 public void write( Writer writer, BuildJob buildJob )
54 throws java.io.IOException
55 {
56 XmlSerializer serializer = new MXSerializer();
57 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", " " );
58 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
59 serializer.setOutput( writer );
60 serializer.startDocument( buildJob.getModelEncoding(), null );
61 writeBuildJob( buildJob, "build-job", serializer );
62 serializer.endDocument();
63 }
64
65
66
67
68
69
70
71
72 public void write( OutputStream stream, BuildJob buildJob )
73 throws java.io.IOException
74 {
75 XmlSerializer serializer = new MXSerializer();
76 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", " " );
77 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
78 serializer.setOutput( stream, buildJob.getModelEncoding() );
79 serializer.startDocument( buildJob.getModelEncoding(), null );
80 writeBuildJob( buildJob, "build-job", serializer );
81 serializer.endDocument();
82 }
83
84
85
86
87
88
89
90
91
92 private void writeBuildJob( BuildJob buildJob, String tagName, XmlSerializer serializer )
93 throws java.io.IOException
94 {
95 serializer.startTag( NAMESPACE, tagName );
96 if ( buildJob.getProject() != null )
97 {
98 serializer.attribute( NAMESPACE, "project", buildJob.getProject() );
99 }
100 if ( buildJob.getName() != null )
101 {
102 serializer.attribute( NAMESPACE, "name", buildJob.getName() );
103 }
104 if ( buildJob.getDescription() != null )
105 {
106 serializer.attribute( NAMESPACE, "description", buildJob.getDescription() );
107 }
108 if ( buildJob.getResult() != null )
109 {
110 serializer.attribute( NAMESPACE, "result", buildJob.getResult() );
111 }
112 if ( buildJob.getTime() != 0.0 )
113 {
114 serializer.attribute( NAMESPACE, "time", String.valueOf( buildJob.getTime() ) );
115 }
116 if ( buildJob.getType() != null )
117 {
118 serializer.attribute( NAMESPACE, "type", buildJob.getType() );
119 }
120 if ( buildJob.getFailureMessage() != null )
121 {
122 serializer.startTag( NAMESPACE, "failureMessage" ).text( buildJob.getFailureMessage() ).endTag( NAMESPACE, "failureMessage" );
123 }
124 serializer.endTag( NAMESPACE, tagName );
125 }
126
127 }