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