RouterDeploymentDefinition { protected void executeDeployment() throws ConcurrentOperationException, InsufficientCapacityException, ResourceUnavailableException { planDeploymentRouters(); if (getNumberOfRoutersToDeploy() > 0 && prepareDeployment()) { findVirtualProvider(); findServiceOfferingId(); findSourceNatIP(); deployAllVirtualRouters(); } } protected  RouterDeploymentDefinition(final Network guestNetwork, final DeployDestination dest,
                                         final Account owner, final Map<Param, Object> params); Long getServiceOfferingId(); Vpc getVpc(); Network getGuestNetwork(); DeployDestination getDest(); Account getOwner(); Map<Param, Object> getParams(); boolean isRedundant(); DeploymentPlan getPlan(); boolean isVpcRouter(); Pod getPod(); Long getPodId(); List<DomainRouterVO> getRouters(); VirtualRouterProvider getVirtualProvider(); boolean isBasic(); boolean isPublicNetwork(); PublicIp getSourceNatIP(); boolean needsPublicNic(); boolean hasSourceNatService(); List<DomainRouterVO> deployVirtualRouter();  }
@Test public void testExecuteDeployment() throws ConcurrentOperationException, InsufficientCapacityException, ResourceUnavailableException { driveTestExecuteDeployment(2, true); }