Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions rwx/src/main/java/org/commonjava/rwx/api/RWXMapper.java
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/**
/*
* Copyright (C) 2010 Red Hat, Inc. (http://github.com/Commonjava/commonjava)
*
* Licensed under the Apache License, Version 2.0 (the "License");
Expand Down Expand Up @@ -56,9 +56,8 @@ public String render( Object obj ) throws XmlRpcException
*/
public <T> T parse( InputStream stream, Class<T> type ) throws XmlRpcException
{
final XmlRpcParser xmlRpcParser = new XmlRpcParser( stream );
RpcObject rpcObject;
try
final RpcObject rpcObject;
try ( XmlRpcParser xmlRpcParser = new XmlRpcParser( stream ) )
{
rpcObject = xmlRpcParser.parse();
}
Expand Down
16 changes: 14 additions & 2 deletions rwx/src/main/java/org/commonjava/rwx/core/XmlRpcParser.java
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/**
/*
* Copyright (C) 2010 Red Hat, Inc. (http://github.com/Commonjava/commonjava)
*
* Licensed under the Apache License, Version 2.0 (the "License");
Expand Down Expand Up @@ -46,7 +46,7 @@
*
* Created by ruhan on 7/13/17.
*/
public class XmlRpcParser
public class XmlRpcParser implements AutoCloseable
{
private final Logger logger = LoggerFactory.getLogger( getClass() );

Expand All @@ -67,6 +67,18 @@ public XmlRpcParser( final InputStream in ) throws XmlRpcException
}
}

/**
* Frees any resources associated with this Reader. This method does not close the
* underlying input source.
*
* @throws XMLStreamException if there are errors freeing associated resources
*/
@Override
public void close() throws XMLStreamException
{
reader.close();
}

/**
* Parse method request or response. XML-RPC response has either fault or params element.
* @return
Expand Down
86 changes: 61 additions & 25 deletions rwx/src/test/java/org/commonjava/rwx/core/XmlRpcParserTest.java
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/**
/*
* Copyright (C) 2010 Red Hat, Inc. (http://github.com/Commonjava/commonjava)
*
* Licensed under the Apache License, Version 2.0 (the "License");
Expand Down Expand Up @@ -40,8 +40,11 @@ public class XmlRpcParserTest
@Test
public void simpleRequestTest() throws XMLStreamException, XmlRpcException
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "simpleRequest" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "simpleRequest" ) ) )
{
object = parser.parse();
}

assertTrue( object instanceof MethodCall );

Expand All @@ -54,8 +57,11 @@ public void simpleRequestTest() throws XMLStreamException, XmlRpcException
@Test
public void requestWithOneParamTest() throws XMLStreamException, XmlRpcException
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "requestWithOneParam" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "requestWithOneParam" ) ) )
{
object = parser.parse();
}

MethodCall request = (MethodCall) object;
List<Object> params = request.getParams();
Expand All @@ -70,8 +76,11 @@ public void requestWithOneParamTest() throws XMLStreamException, XmlRpcException
@Test
public void requestWithOneStructParamTest() throws XMLStreamException, XmlRpcException
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "requestWithOneStructParam" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "requestWithOneStructParam" ) ) )
{
object = parser.parse();
}

MethodCall request = (MethodCall) object;
List<Object> params = request.getParams();
Expand All @@ -91,8 +100,11 @@ public void requestWithOneStructParamTest() throws XMLStreamException, XmlRpcExc
@Test
public void requestWithOneArrayParamTest() throws XMLStreamException, XmlRpcException
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "requestWithOneArrayParam" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "requestWithOneArrayParam" ) ) )
{
object = parser.parse();
}

MethodCall request = (MethodCall) object;
List<Object> params = request.getParams();
Expand All @@ -112,8 +124,11 @@ public void requestWithOneArrayParamTest() throws XMLStreamException, XmlRpcExce
@Test
public void requestWithArrayInStructTest() throws XMLStreamException, XmlRpcException
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "requestWithArrayInStruct" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "requestWithArrayInStruct" ) ) )
{
object = parser.parse();
}

MethodCall request = (MethodCall) object;
List<Object> params = request.getParams();
Expand All @@ -135,8 +150,11 @@ public void requestWithArrayInStructTest() throws XMLStreamException, XmlRpcExce
@Test
public void kojiMulticallRequestTest() throws XMLStreamException, XmlRpcException
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "kojiMulticallRequest" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "kojiMulticallRequest" ) ) )
{
object = parser.parse();
}

String nvr = "org.dashbuilder-dashbuilder-parent-metadata-0.4.0.Final-1";

Expand All @@ -162,8 +180,11 @@ public void kojiMulticallRequestTest() throws XMLStreamException, XmlRpcExceptio
@Test
public void simpleResponseTest() throws XMLStreamException, XmlRpcException
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "simpleResponse" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "simpleResponse" ) ) )
{
object = parser.parse();
}

assertTrue( object instanceof MethodResponse );

Expand All @@ -180,8 +201,11 @@ public void simpleResponseTest() throws XMLStreamException, XmlRpcException
@Test
public void simpleFaultResponseTest() throws XMLStreamException, XmlRpcException
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "simpleFault" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "simpleFault" ) ) )
{
object = parser.parse();
}

assertTrue( object instanceof Fault );

Expand All @@ -204,8 +228,11 @@ public void simpleFaultResponseTest() throws XMLStreamException, XmlRpcException
@Test
public void jiraServerInfoTest() throws XMLStreamException, XmlRpcException
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "jiraServerInfoResponse" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "jiraServerInfoResponse" ) ) )
{
object = parser.parse();
}

MethodResponse response = (MethodResponse) object;

Expand All @@ -223,8 +250,11 @@ public void jiraServerInfoTest() throws XMLStreamException, XmlRpcException
@Test
public void kojiGetBuildResponseTest() throws XMLStreamException, XmlRpcException
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "kojiGetBuildResponse" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "kojiGetBuildResponse" ) ) )
{
object = parser.parse();
}

MethodResponse response = (MethodResponse) object;

Expand All @@ -243,8 +273,11 @@ public void kojiGetBuildResponseTest() throws XMLStreamException, XmlRpcExceptio
@Test
public void kojiMulticallResponseTest() throws XMLStreamException, XmlRpcException
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "kojiMulticallResponse" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "kojiMulticallResponse" ) ) )
{
object = parser.parse();
}

MethodResponse response = (MethodResponse) object;

Expand Down Expand Up @@ -283,8 +316,11 @@ public void kojiMulticallResponseTest() throws XMLStreamException, XmlRpcExcepti
@Test
public void kojiGetBuildTypeNilResponseTest() throws Exception
{
final XmlRpcParser parser = new XmlRpcParser( getXMLStream( "kojiGetBuildTypeNilResponse" ) );
Object object = parser.parse();
final Object object;
try ( XmlRpcParser parser = new XmlRpcParser( getXMLStream( "kojiGetBuildTypeNilResponse" ) ) )
{
object = parser.parse();
}

MethodResponse response = (MethodResponse) object;

Expand Down
Loading