3232
3333public class DependencySerializer extends StdSerializer <List <Dependency >>
3434{
35- private final String NAMESPACE_PREFIX = "dg" ;
36- private final String DEPENDENCY = "dependency" ;
37- private final String DEPENDENCIES = "dependencies" ;
3835 private final String REF = "ref" ;
39- private final String NAMESPACE_URI = "http://cyclonedx.org/schema/ext/dependency-graph/1.0" ;
36+
4037 private boolean useNamespace = false ;
4138
4239 public DependencySerializer (final boolean useNamespace ) {
@@ -91,18 +88,7 @@ private void writeXMLDependenciesWithGenerator(final ToXmlGenerator toXmlGenerat
9188 throws IOException , XMLStreamException
9289 {
9390 if (dependencies != null && !dependencies .isEmpty ()) {
94- QName qName ;
95-
96- if (useNamespace ) {
97- qName = new QName (NAMESPACE_URI , DEPENDENCIES , NAMESPACE_PREFIX );
98- toXmlGenerator .getStaxWriter ().setPrefix (qName .getPrefix (), qName .getNamespaceURI ());
99- } else {
100- qName = new QName (DEPENDENCIES );
101- }
102-
103- toXmlGenerator .setNextName (qName );
104- toXmlGenerator .writeStartObject ();
105- toXmlGenerator .writeFieldName (qName .getLocalPart ());
91+ processNamespace (toXmlGenerator , "dependencies" );
10692 toXmlGenerator .writeStartArray ();
10793
10894 for (Dependency dependency : dependencies ) {
@@ -117,18 +103,7 @@ private void writeXMLDependenciesWithGenerator(final ToXmlGenerator toXmlGenerat
117103 private void writeXMLDependency (final Dependency dependency , final ToXmlGenerator generator )
118104 throws IOException , XMLStreamException
119105 {
120- QName qName ;
121- if (useNamespace ) {
122- qName = new QName (NAMESPACE_URI , DEPENDENCY , NAMESPACE_PREFIX );
123- generator .getStaxWriter ().setPrefix (qName .getPrefix (), qName .getNamespaceURI ());
124- } else {
125- qName = new QName (DEPENDENCY );
126- }
127-
128- generator .setNextName (qName );
129-
130- generator .writeStartObject ();
131- generator .writeFieldName (qName .getLocalPart ());
106+ processNamespace (generator , "dependency" );
132107
133108 if (dependency .getDependencies () != null && !dependency .getDependencies ().isEmpty ()) {
134109 generator .writeStartArray ();
@@ -152,4 +127,21 @@ private void writeXMLDependency(final Dependency dependency, final ToXmlGenerato
152127
153128 generator .writeEndObject ();
154129 }
130+
131+ private void processNamespace (final ToXmlGenerator toXmlGenerator , final String dependencies )
132+ throws XMLStreamException , IOException
133+ {
134+ QName qName ;
135+
136+ if (useNamespace ) {
137+ qName = new QName ("http://cyclonedx.org/schema/ext/dependency-graph/1.0" , dependencies , "dg" );
138+ toXmlGenerator .getStaxWriter ().setPrefix (qName .getPrefix (), qName .getNamespaceURI ());
139+ } else {
140+ qName = new QName (dependencies );
141+ }
142+
143+ toXmlGenerator .setNextName (qName );
144+ toXmlGenerator .writeStartObject ();
145+ toXmlGenerator .writeFieldName (qName .getLocalPart ());
146+ }
155147}
0 commit comments