You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ya...@apache.org on 2012/07/23 23:57:40 UTC

[13/13] git commit: cloudstack 3.0 API - listVpnConnections API - add publicip property (get it from vpnGateway object).

cloudstack 3.0 API - listVpnConnections API - add publicip property (get it from vpnGateway object).


Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/196885e3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/196885e3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/196885e3

Branch: refs/heads/vpc
Commit: 196885e37883bc29c01f4fc5394efb42061d8f5b
Parents: 8fad593
Author: Jessica Wang <je...@citrix.com>
Authored: Mon Jul 2 10:22:30 2012 -0700
Committer: Sheng Yang <sh...@citrix.com>
Committed: Mon Jul 23 14:20:43 2012 -0700

----------------------------------------------------------------------
 .../response/Site2SiteVpnConnectionResponse.java   |    7 +++++++
 server/src/com/cloud/api/ApiDBUtils.java           |    8 ++++++++
 server/src/com/cloud/api/ApiResponseHelper.java    |   13 ++++++++++++-
 3 files changed, 27 insertions(+), 1 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/196885e3/api/src/com/cloud/api/response/Site2SiteVpnConnectionResponse.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/api/response/Site2SiteVpnConnectionResponse.java b/api/src/com/cloud/api/response/Site2SiteVpnConnectionResponse.java
index 10e6557..398c8b7 100644
--- a/api/src/com/cloud/api/response/Site2SiteVpnConnectionResponse.java
+++ b/api/src/com/cloud/api/response/Site2SiteVpnConnectionResponse.java
@@ -30,6 +30,9 @@ public class Site2SiteVpnConnectionResponse extends BaseResponse {
 
     @SerializedName(ApiConstants.S2S_VPN_GATEWAY_ID) @Param(description="the vpn gateway ID")
     private IdentityProxy vpnGatewayId= new IdentityProxy("s2s_vpn_gateway");
+    
+    @SerializedName(ApiConstants.PUBLIC_IP) @Param(description="the public IP address")
+    private String ip;
 
     @SerializedName(ApiConstants.S2S_CUSTOMER_GATEWAY_ID) @Param(description="the customer gateway ID")
     private IdentityProxy customerGatewayId = new IdentityProxy("s2s_customer_gateway");
@@ -48,6 +51,10 @@ public class Site2SiteVpnConnectionResponse extends BaseResponse {
         this.vpnGatewayId.setValue(vpnGatewayId);
     }
 
+    public void setIp(String ip) {
+		this.ip = ip;
+	}
+    
     public void setCustomerGatewayId(Long customerGatewayId) {
         this.customerGatewayId.setValue(customerGatewayId);
     }

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/196885e3/server/src/com/cloud/api/ApiDBUtils.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/ApiDBUtils.java b/server/src/com/cloud/api/ApiDBUtils.java
index f116681..1102e62 100755
--- a/server/src/com/cloud/api/ApiDBUtils.java
+++ b/server/src/com/cloud/api/ApiDBUtils.java
@@ -62,6 +62,7 @@ import com.cloud.network.NetworkManager;
 import com.cloud.network.NetworkProfile;
 import com.cloud.network.NetworkRuleConfigVO;
 import com.cloud.network.NetworkVO;
+import com.cloud.network.Site2SiteVpnGatewayVO;
 import com.cloud.network.Networks.TrafficType;
 import com.cloud.network.dao.FirewallRulesCidrsDao;
 import com.cloud.network.dao.IPAddressDao;
@@ -69,6 +70,7 @@ import com.cloud.network.dao.LoadBalancerDao;
 import com.cloud.network.dao.NetworkDao;
 import com.cloud.network.dao.NetworkDomainDao;
 import com.cloud.network.dao.NetworkRuleConfigDao;
+import com.cloud.network.dao.Site2SiteVpnGatewayDao;
 import com.cloud.network.security.SecurityGroup;
 import com.cloud.network.security.SecurityGroupManager;
 import com.cloud.network.security.SecurityGroupVO;
@@ -183,6 +185,7 @@ public class ApiDBUtils {
     private static UserVmDao _userVmDao;
     private static VlanDao _vlanDao;
     private static VolumeDao _volumeDao;
+    private static Site2SiteVpnGatewayDao _site2SiteVpnGatewayDao;
     private static VolumeHostDao _volumeHostDao;
     private static DataCenterDao _zoneDao;
     private static NetworkOfferingDao _networkOfferingDao;
@@ -238,6 +241,7 @@ public class ApiDBUtils {
         _userVmDao = locator.getDao(UserVmDao.class);
         _vlanDao = locator.getDao(VlanDao.class);
         _volumeDao = locator.getDao(VolumeDao.class);
+        _site2SiteVpnGatewayDao = locator.getDao(Site2SiteVpnGatewayDao.class);
         _volumeHostDao = locator.getDao(VolumeHostDao.class);
         _zoneDao = locator.getDao(DataCenterDao.class);
         _securityGroupDao = locator.getDao(SecurityGroupDao.class);
@@ -555,6 +559,10 @@ public class ApiDBUtils {
         return _volumeDao.findByIdIncludingRemoved(volumeId);
     }
 
+    public static Site2SiteVpnGatewayVO findVpnGatewayById(Long vpnGatewayId) {
+        return _site2SiteVpnGatewayDao.findById(vpnGatewayId);
+    }
+    
     public static List<UserVO> listUsersByAccount(long accountId) {
         return _userDao.listByAccount(accountId);
     }

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/196885e3/server/src/com/cloud/api/ApiResponseHelper.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/api/ApiResponseHelper.java b/server/src/com/cloud/api/ApiResponseHelper.java
index 83288ae..d0c52e4 100755
--- a/server/src/com/cloud/api/ApiResponseHelper.java
+++ b/server/src/com/cloud/api/ApiResponseHelper.java
@@ -146,6 +146,7 @@ import com.cloud.network.RemoteAccessVpn;
 import com.cloud.network.Site2SiteCustomerGateway;
 import com.cloud.network.Site2SiteVpnConnection;
 import com.cloud.network.Site2SiteVpnGateway;
+import com.cloud.network.Site2SiteVpnGatewayVO;
 import com.cloud.network.VirtualRouterProvider;
 import com.cloud.network.VpnUser;
 import com.cloud.network.router.VirtualRouter;
@@ -3790,7 +3791,17 @@ public class ApiResponseHelper implements ResponseGenerator {
     public Site2SiteVpnConnectionResponse createSite2SiteVpnConnectionResponse(Site2SiteVpnConnection result) {
         Site2SiteVpnConnectionResponse response = new Site2SiteVpnConnectionResponse();
         response.setId(result.getId());
-        response.setVpnGatewayId(result.getVpnGatewayId());
+        
+        response.setVpnGatewayId(result.getVpnGatewayId()); 
+        Long vpnGatewayId = result.getVpnGatewayId();
+        if(vpnGatewayId != null) {
+        	Site2SiteVpnGatewayVO vpnGateway = ApiDBUtils.findVpnGatewayById(vpnGatewayId);//???
+        	
+        	long ipId = vpnGateway.getAddrId();
+        	IPAddressVO ipObj = ApiDBUtils.findIpAddressById(ipId);
+        	response.setIp(ipObj.getAddress().addr());  
+        }
+        
         response.setCustomerGatewayId(result.getCustomerGatewayId());
         response.setCreated(result.getCreated());
         response.setRemoved(result.getRemoved());