1
2
3
4
5
6 package org.apache.maven.plugins.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.plugins.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 private String fileComment = null;
41
42
43
44
45
46
47
48
49
50
51
52 public void setFileComment( String fileComment )
53 {
54 this.fileComment = fileComment;
55 }
56
57
58
59
60
61
62
63
64 public void write( Writer writer, BuildJob buildJob )
65 throws java.io.IOException
66 {
67 XmlSerializer serializer = new MXSerializer();
68 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", " " );
69 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
70 serializer.setOutput( writer );
71 serializer.startDocument( buildJob.getModelEncoding(), null );
72 writeBuildJob( buildJob, "build-job", serializer );
73 serializer.endDocument();
74 }
75
76
77
78
79
80
81
82
83 public void write( OutputStream stream, BuildJob buildJob )
84 throws java.io.IOException
85 {
86 XmlSerializer serializer = new MXSerializer();
87 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-indentation", " " );
88 serializer.setProperty( "http://xmlpull.org/v1/doc/properties.html#serializer-line-separator", "\n" );
89 serializer.setOutput( stream, buildJob.getModelEncoding() );
90 serializer.startDocument( buildJob.getModelEncoding(), null );
91 writeBuildJob( buildJob, "build-job", serializer );
92 serializer.endDocument();
93 }
94
95
96
97
98
99
100
101
102
103 private void writeBuildJob( BuildJob buildJob, String tagName, XmlSerializer serializer )
104 throws java.io.IOException
105 {
106 serializer.startTag( NAMESPACE, tagName );
107 if ( buildJob.getProject() != null )
108 {
109 serializer.attribute( NAMESPACE, "project", buildJob.getProject() );
110 }
111 if ( buildJob.getName() != null )
112 {
113 serializer.attribute( NAMESPACE, "name", buildJob.getName() );
114 }
115 if ( buildJob.getDescription() != null )
116 {
117 serializer.attribute( NAMESPACE, "description", buildJob.getDescription() );
118 }
119 if ( buildJob.getResult() != null )
120 {
121 serializer.attribute( NAMESPACE, "result", buildJob.getResult() );
122 }
123 if ( buildJob.getTime() != 0.0f )
124 {
125 serializer.attribute( NAMESPACE, "time", String.valueOf( buildJob.getTime() ) );
126 }
127 if ( ( buildJob.getType() != null ) && !buildJob.getType().equals( "normal" ) )
128 {
129 serializer.attribute( NAMESPACE, "type", buildJob.getType() );
130 }
131 if ( buildJob.getOrdinal() != 0 )
132 {
133 serializer.attribute( NAMESPACE, "ordinal", String.valueOf( buildJob.getOrdinal() ) );
134 }
135 if ( buildJob.getBuildlog() != null )
136 {
137 serializer.attribute( NAMESPACE, "buildlog", buildJob.getBuildlog() );
138 }
139 if ( buildJob.getFailureMessage() != null )
140 {
141 serializer.startTag( NAMESPACE, "failureMessage" ).text( buildJob.getFailureMessage() ).endTag( NAMESPACE, "failureMessage" );
142 }
143 serializer.endTag( NAMESPACE, tagName );
144 }
145
146 }