Skip to content

Commit 2364ada

Browse files
Likitha ShettyPrachi Damle
authored andcommitted
CLOUDSTACK-1119 [EC2 Query API] Add filter support for DecsribeAddresses
EC2DescribeAddresses doesn't have filter support. Support will be available for filters -> instance-id and public-ip
1 parent b5e2803 commit 2364ada

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

awsapi/src/com/cloud/bridge/service/EC2RestServlet.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,7 @@
105105
import com.cloud.bridge.persist.dao.OfferingDaoImpl;
106106
import com.cloud.bridge.persist.dao.UserCredentialsDaoImpl;
107107
import com.cloud.bridge.service.controller.s3.ServiceProvider;
108+
import com.cloud.bridge.service.core.ec2.EC2AddressFilterSet;
108109
import com.cloud.bridge.service.core.ec2.EC2AssociateAddress;
109110
import com.cloud.bridge.service.core.ec2.EC2AuthorizeRevokeSecurityGroup;
110111
import com.cloud.bridge.service.core.ec2.EC2AvailabilityZonesFilterSet;
@@ -1397,6 +1398,15 @@ private void describeAddresses( HttpServletRequest request, HttpServletResponse
13971398
if (null != value && 0 < value.length) ec2Request.addPublicIp( value[0] );
13981399
}
13991400
}
1401+
1402+
// add filters
1403+
EC2Filter[] filterSet = extractFilters( request );
1404+
if ( filterSet != null ) {
1405+
EC2AddressFilterSet afs = new EC2AddressFilterSet();
1406+
for ( int i=0; i < filterSet.length; i++ )
1407+
afs.addFilter( filterSet[i] );
1408+
ec2Request.setFilterSet( afs );
1409+
}
14001410
// -> execute the request
14011411
EC2Engine engine = ServiceProvider.getInstance().getEC2Engine();
14021412
serializeResponse(response, EC2SoapServiceImpl.toDescribeAddressesResponse( engine.describeAddresses( ec2Request)));

0 commit comments

Comments
 (0)