reverting the change for bug 6361; this was an accidental push instead of commit

This commit is contained in:
abhishek 2010-10-19 15:20:10 -07:00
parent 7cc8087fa6
commit 7c11c04427
18 changed files with 121 additions and 121 deletions

View File

@ -13,7 +13,7 @@ import javax.persistence.Table;
@Table(name=("network_group"))
@SecondaryTable(name="network_ingress_rule", join="left",
pkJoinColumns={@PrimaryKeyJoinColumn(name="id", referencedColumnName="network_group_id")})
public class SecurityGroupRulesVO {
public class NetworkGroupRulesVO {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="id")
@ -58,9 +58,9 @@ public class SecurityGroupRulesVO {
@Column(name="allowed_ip_cidr", table="network_ingress_rule", insertable=false, updatable=false, nullable=true)
private String allowedSourceIpCidr = null;
public SecurityGroupRulesVO() { }
public NetworkGroupRulesVO() { }
public SecurityGroupRulesVO(Long id, String name, String description, Long domainId, Long accountId, String accountName, Long ruleId, int startPort, int endPort, String protocol, Long allowedNetworkId, String allowedNetworkGroup, String allowedNetGrpAcct, String allowedSourceIpCidr) {
public NetworkGroupRulesVO(Long id, String name, String description, Long domainId, Long accountId, String accountName, Long ruleId, int startPort, int endPort, String protocol, Long allowedNetworkId, String allowedNetworkGroup, String allowedNetGrpAcct, String allowedSourceIpCidr) {
this.id = id;
this.name = name;
this.description = description;

View File

@ -34,7 +34,7 @@ import com.cloud.utils.db.GenericDao;
@Entity
@Table(name="op_nwgrp_work")
public class SecurityGroupWorkVO {
public class NetworkGroupWorkVO {
public enum Step {
Scheduled,
Processing,
@ -70,7 +70,7 @@ public class SecurityGroupWorkVO {
private Long logsequenceNumber = null;
protected SecurityGroupWorkVO() {
protected NetworkGroupWorkVO() {
}
public Long getId() {
@ -97,7 +97,7 @@ public class SecurityGroupWorkVO {
public SecurityGroupWorkVO(Long instanceId, Long serverId, Date created,
public NetworkGroupWorkVO(Long instanceId, Long serverId, Date created,
Step step, Date dateTaken) {
super();
this.instanceId = instanceId;

View File

@ -2,28 +2,28 @@ package com.cloud.network.security.dao;
import java.util.List;
import com.cloud.network.security.SecurityGroupRulesVO;
import com.cloud.network.security.NetworkGroupRulesVO;
import com.cloud.utils.db.GenericDao;
public interface NetworkGroupRulesDao extends GenericDao<SecurityGroupRulesVO, Long> {
public interface NetworkGroupRulesDao extends GenericDao<NetworkGroupRulesVO, Long> {
/**
* List a network group and associated ingress rules
* @param accountId the account id of the owner of the network group
* @param groupName the name of the group for which to list rules
* @return the list of ingress rules associated with the network group (and network group info)
*/
List<SecurityGroupRulesVO> listNetworkGroupRules(long accountId, String groupName);
List<NetworkGroupRulesVO> listNetworkGroupRules(long accountId, String groupName);
/**
* List network groups and associated ingress rules
* @param accountId the id of the account for which to list groups and associated rules
* @return the list of network groups with associated ingress rules
*/
List<SecurityGroupRulesVO> listNetworkGroupRules(long accountId);
List<NetworkGroupRulesVO> listNetworkGroupRules(long accountId);
/**
* List all network groups and associated ingress rules
* @return the list of network groups with associated ingress rules
*/
List<SecurityGroupRulesVO> listNetworkGroupRules();
List<NetworkGroupRulesVO> listNetworkGroupRules();
}

View File

@ -4,16 +4,16 @@ import java.util.List;
import javax.ejb.Local;
import com.cloud.network.security.SecurityGroupRulesVO;
import com.cloud.network.security.NetworkGroupRulesVO;
import com.cloud.utils.db.Filter;
import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.SearchBuilder;
import com.cloud.utils.db.SearchCriteria;
@Local(value={NetworkGroupRulesDao.class})
public class NetworkGroupRulesDaoImpl extends GenericDaoBase<SecurityGroupRulesVO, Long> implements NetworkGroupRulesDao {
private SearchBuilder<SecurityGroupRulesVO> AccountGroupNameSearch;
private SearchBuilder<SecurityGroupRulesVO> AccountSearch;
public class NetworkGroupRulesDaoImpl extends GenericDaoBase<NetworkGroupRulesVO, Long> implements NetworkGroupRulesDao {
private SearchBuilder<NetworkGroupRulesVO> AccountGroupNameSearch;
private SearchBuilder<NetworkGroupRulesVO> AccountSearch;
protected NetworkGroupRulesDaoImpl() {
AccountGroupNameSearch = createSearchBuilder();
@ -27,16 +27,16 @@ public class NetworkGroupRulesDaoImpl extends GenericDaoBase<SecurityGroupRulesV
}
@Override
public List<SecurityGroupRulesVO> listNetworkGroupRules() {
Filter searchFilter = new Filter(SecurityGroupRulesVO.class, "id", true, null, null);
public List<NetworkGroupRulesVO> listNetworkGroupRules() {
Filter searchFilter = new Filter(NetworkGroupRulesVO.class, "id", true, null, null);
return listAll(searchFilter);
}
@Override
public List<SecurityGroupRulesVO> listNetworkGroupRules(long accountId, String groupName) {
Filter searchFilter = new Filter(SecurityGroupRulesVO.class, "id", true, null, null);
public List<NetworkGroupRulesVO> listNetworkGroupRules(long accountId, String groupName) {
Filter searchFilter = new Filter(NetworkGroupRulesVO.class, "id", true, null, null);
SearchCriteria<SecurityGroupRulesVO> sc = AccountGroupNameSearch.create();
SearchCriteria<NetworkGroupRulesVO> sc = AccountGroupNameSearch.create();
sc.setParameters("accountId", accountId);
sc.setParameters("name", groupName);
@ -44,9 +44,9 @@ public class NetworkGroupRulesDaoImpl extends GenericDaoBase<SecurityGroupRulesV
}
@Override
public List<SecurityGroupRulesVO> listNetworkGroupRules(long accountId) {
Filter searchFilter = new Filter(SecurityGroupRulesVO.class, "id", true, null, null);
SearchCriteria<SecurityGroupRulesVO> sc = AccountSearch.create();
public List<NetworkGroupRulesVO> listNetworkGroupRules(long accountId) {
Filter searchFilter = new Filter(NetworkGroupRulesVO.class, "id", true, null, null);
SearchCriteria<NetworkGroupRulesVO> sc = AccountSearch.create();
sc.setParameters("accountId", accountId);
return listBy(sc, searchFilter);

View File

@ -21,17 +21,17 @@ package com.cloud.network.security.dao;
import java.util.Date;
import java.util.List;
import com.cloud.network.security.SecurityGroupWorkVO;
import com.cloud.network.security.SecurityGroupWorkVO.Step;
import com.cloud.network.security.NetworkGroupWorkVO;
import com.cloud.network.security.NetworkGroupWorkVO.Step;
import com.cloud.utils.db.GenericDao;
public interface NetworkGroupWorkDao extends GenericDao<SecurityGroupWorkVO, Long> {
SecurityGroupWorkVO findByVmId(long vmId, boolean taken);
public interface NetworkGroupWorkDao extends GenericDao<NetworkGroupWorkVO, Long> {
NetworkGroupWorkVO findByVmId(long vmId, boolean taken);
SecurityGroupWorkVO findByVmIdStep(long vmId, Step step);
NetworkGroupWorkVO findByVmIdStep(long vmId, Step step);
SecurityGroupWorkVO take(long serverId);
NetworkGroupWorkVO take(long serverId);
void updateStep(Long vmId, Long logSequenceNumber, Step done);
@ -39,7 +39,7 @@ public interface NetworkGroupWorkDao extends GenericDao<SecurityGroupWorkVO, Lon
int deleteFinishedWork(Date timeBefore);
List<SecurityGroupWorkVO> findUnfinishedWork(Date timeBefore);
List<NetworkGroupWorkVO> findUnfinishedWork(Date timeBefore);
}

View File

@ -24,8 +24,8 @@ import java.util.List;
import javax.ejb.Local;
import com.cloud.ha.WorkVO;
import com.cloud.network.security.SecurityGroupWorkVO;
import com.cloud.network.security.SecurityGroupWorkVO.Step;
import com.cloud.network.security.NetworkGroupWorkVO;
import com.cloud.network.security.NetworkGroupWorkVO.Step;
import com.cloud.utils.db.Filter;
import com.cloud.utils.db.GenericDaoBase;
import com.cloud.utils.db.SearchBuilder;
@ -35,13 +35,13 @@ import com.cloud.utils.db.SearchCriteria.Op;
import com.cloud.utils.exception.CloudRuntimeException;
@Local(value={NetworkGroupWorkDao.class})
public class NetworkGroupWorkDaoImpl extends GenericDaoBase<SecurityGroupWorkVO, Long> implements NetworkGroupWorkDao {
private SearchBuilder<SecurityGroupWorkVO> VmIdTakenSearch;
private SearchBuilder<SecurityGroupWorkVO> VmIdSeqNumSearch;
private SearchBuilder<SecurityGroupWorkVO> VmIdUnTakenSearch;
private SearchBuilder<SecurityGroupWorkVO> UntakenWorkSearch;
private SearchBuilder<SecurityGroupWorkVO> VmIdStepSearch;
private SearchBuilder<SecurityGroupWorkVO> CleanupSearch;
public class NetworkGroupWorkDaoImpl extends GenericDaoBase<NetworkGroupWorkVO, Long> implements NetworkGroupWorkDao {
private SearchBuilder<NetworkGroupWorkVO> VmIdTakenSearch;
private SearchBuilder<NetworkGroupWorkVO> VmIdSeqNumSearch;
private SearchBuilder<NetworkGroupWorkVO> VmIdUnTakenSearch;
private SearchBuilder<NetworkGroupWorkVO> UntakenWorkSearch;
private SearchBuilder<NetworkGroupWorkVO> VmIdStepSearch;
private SearchBuilder<NetworkGroupWorkVO> CleanupSearch;
protected NetworkGroupWorkDaoImpl() {
@ -86,29 +86,29 @@ public class NetworkGroupWorkDaoImpl extends GenericDaoBase<SecurityGroupWorkVO,
}
@Override
public SecurityGroupWorkVO findByVmId(long vmId, boolean taken) {
SearchCriteria<SecurityGroupWorkVO> sc = taken?VmIdTakenSearch.create():VmIdUnTakenSearch.create();
public NetworkGroupWorkVO findByVmId(long vmId, boolean taken) {
SearchCriteria<NetworkGroupWorkVO> sc = taken?VmIdTakenSearch.create():VmIdUnTakenSearch.create();
sc.setParameters("vmId", vmId);
return findOneIncludingRemovedBy(sc);
}
@Override
public SecurityGroupWorkVO take(long serverId) {
public NetworkGroupWorkVO take(long serverId) {
final Transaction txn = Transaction.currentTxn();
try {
final SearchCriteria<SecurityGroupWorkVO> sc = UntakenWorkSearch.create();
final SearchCriteria<NetworkGroupWorkVO> sc = UntakenWorkSearch.create();
sc.setParameters("step", Step.Scheduled);
final Filter filter = new Filter(SecurityGroupWorkVO.class, null, true, 0l, 1l);//FIXME: order desc by update time?
final Filter filter = new Filter(NetworkGroupWorkVO.class, null, true, 0l, 1l);//FIXME: order desc by update time?
txn.start();
final List<SecurityGroupWorkVO> vos = lock(sc, filter, true);
final List<NetworkGroupWorkVO> vos = lock(sc, filter, true);
if (vos.size() == 0) {
txn.commit();
return null;
}
SecurityGroupWorkVO work = null;
for (SecurityGroupWorkVO w: vos) {
NetworkGroupWorkVO work = null;
for (NetworkGroupWorkVO w: vos) {
//ensure that there is no job in Processing state for the same VM
if ( findByVmIdStep(w.getInstanceId(), Step.Processing) == null) {
work = w;
@ -121,7 +121,7 @@ public class NetworkGroupWorkDaoImpl extends GenericDaoBase<SecurityGroupWorkVO,
}
work.setServerId(serverId);
work.setDateTaken(new Date());
work.setStep(SecurityGroupWorkVO.Step.Processing);
work.setStep(NetworkGroupWorkVO.Step.Processing);
update(work.getId(), work);
@ -138,18 +138,18 @@ public class NetworkGroupWorkDaoImpl extends GenericDaoBase<SecurityGroupWorkVO,
public void updateStep(Long vmId, Long logSequenceNumber, Step step) {
final Transaction txn = Transaction.currentTxn();
txn.start();
SearchCriteria<SecurityGroupWorkVO> sc = VmIdSeqNumSearch.create();
SearchCriteria<NetworkGroupWorkVO> sc = VmIdSeqNumSearch.create();
sc.setParameters("vmId", vmId);
sc.setParameters("seqno", logSequenceNumber);
final Filter filter = new Filter(WorkVO.class, null, true, 0l, 1l);
final List<SecurityGroupWorkVO> vos = lock(sc, filter, true);
final List<NetworkGroupWorkVO> vos = lock(sc, filter, true);
if (vos.size() == 0) {
txn.commit();
return;
}
SecurityGroupWorkVO work = vos.get(0);
NetworkGroupWorkVO work = vos.get(0);
work.setStep(step);
update(work.getId(), work);
@ -157,8 +157,8 @@ public class NetworkGroupWorkDaoImpl extends GenericDaoBase<SecurityGroupWorkVO,
}
@Override
public SecurityGroupWorkVO findByVmIdStep(long vmId, Step step) {
SearchCriteria<SecurityGroupWorkVO> sc = VmIdStepSearch.create();
public NetworkGroupWorkVO findByVmIdStep(long vmId, Step step) {
SearchCriteria<NetworkGroupWorkVO> sc = VmIdStepSearch.create();
sc.setParameters("vmId", vmId);
sc.setParameters("step", step);
return findOneIncludingRemovedBy(sc);
@ -169,7 +169,7 @@ public class NetworkGroupWorkDaoImpl extends GenericDaoBase<SecurityGroupWorkVO,
final Transaction txn = Transaction.currentTxn();
txn.start();
SecurityGroupWorkVO work = lock(workId, true);
NetworkGroupWorkVO work = lock(workId, true);
if (work == null) {
txn.commit();
return;
@ -183,7 +183,7 @@ public class NetworkGroupWorkDaoImpl extends GenericDaoBase<SecurityGroupWorkVO,
@Override
public int deleteFinishedWork(Date timeBefore) {
final SearchCriteria<SecurityGroupWorkVO> sc = CleanupSearch.create();
final SearchCriteria<NetworkGroupWorkVO> sc = CleanupSearch.create();
sc.setParameters("taken", timeBefore);
sc.setParameters("step", Step.Done);
@ -191,14 +191,14 @@ public class NetworkGroupWorkDaoImpl extends GenericDaoBase<SecurityGroupWorkVO,
}
@Override
public List<SecurityGroupWorkVO> findUnfinishedWork(Date timeBefore) {
final SearchCriteria<SecurityGroupWorkVO> sc = CleanupSearch.create();
public List<NetworkGroupWorkVO> findUnfinishedWork(Date timeBefore) {
final SearchCriteria<NetworkGroupWorkVO> sc = CleanupSearch.create();
sc.setParameters("taken", timeBefore);
sc.setParameters("step", Step.Processing);
List<SecurityGroupWorkVO> result = listIncludingRemovedBy(sc);
List<NetworkGroupWorkVO> result = listIncludingRemovedBy(sc);
SecurityGroupWorkVO work = createForUpdate();
NetworkGroupWorkVO work = createForUpdate();
work.setStep(Step.Error);
update(work, sc);

View File

@ -32,7 +32,7 @@ import com.cloud.network.dao.IPAddressDao;
import com.cloud.network.dao.LoadBalancerDao;
import com.cloud.network.dao.NetworkRuleConfigDao;
import com.cloud.network.dao.SecurityGroupDao;
import com.cloud.network.security.SecurityGroupManager;
import com.cloud.network.security.NetworkGroupManager;
import com.cloud.offering.ServiceOffering;
import com.cloud.server.Criteria;
import com.cloud.server.ManagementServer;
@ -84,7 +84,7 @@ public class ApiDBUtils {
private static AccountManager _accountMgr;
private static AgentManager _agentMgr;
private static AsyncJobManager _asyncMgr;
private static SecurityGroupManager _networkGroupMgr;
private static NetworkGroupManager _networkGroupMgr;
private static SnapshotManager _snapMgr;
private static StorageManager _storageMgr;
private static UserVmManager _userVmMgr;
@ -123,7 +123,7 @@ public class ApiDBUtils {
_accountMgr = locator.getManager(AccountManager.class);
_agentMgr = locator.getManager(AgentManager.class);
_asyncMgr = locator.getManager(AsyncJobManager.class);
_networkGroupMgr = locator.getManager(SecurityGroupManager.class);
_networkGroupMgr = locator.getManager(NetworkGroupManager.class);
_snapMgr = locator.getManager(SnapshotManager.class);
_storageMgr = locator.getManager(StorageManager.class);
_userVmMgr = locator.getManager(UserVmManager.class);

View File

@ -37,7 +37,7 @@ import com.cloud.consoleproxy.ConsoleProxyManager;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.PermissionDeniedException;
import com.cloud.network.NetworkManager;
import com.cloud.network.security.SecurityGroupManager;
import com.cloud.network.security.NetworkGroupManager;
import com.cloud.server.ManagementServer;
import com.cloud.storage.StorageManager;
import com.cloud.storage.snapshot.SnapshotManager;
@ -59,7 +59,7 @@ public class ApiDispatcher {
private ConfigurationManager _configMgr;
private ConsoleProxyManager _consoleProxyMgr;
private ManagementServer _mgmtServer;
private SecurityGroupManager _networkGroupMgr;
private NetworkGroupManager _networkGroupMgr;
private NetworkManager _networkMgr;
private SnapshotManager _snapshotMgr;
private StorageManager _storageMgr;
@ -80,7 +80,7 @@ public class ApiDispatcher {
_agentMgr = locator.getManager(AgentManager.class);
_configMgr = locator.getManager(ConfigurationManager.class);
_consoleProxyMgr = locator.getManager(ConsoleProxyManager.class);
_networkGroupMgr = locator.getManager(SecurityGroupManager.class);
_networkGroupMgr = locator.getManager(NetworkGroupManager.class);
_networkMgr = locator.getManager(NetworkManager.class);
_snapshotMgr = locator.getManager(SnapshotManager.class);
_storageMgr = locator.getManager(StorageManager.class);

View File

@ -28,8 +28,8 @@ import com.cloud.api.response.NetworkGroupResponse;
import com.cloud.network.security.NetworkGroupVO;
@Implementation(method="createNetworkGroup", manager=Manager.NetworkGroupManager)
public class CreateSecurityGroupCmd extends BaseCmd {
public static final Logger s_logger = Logger.getLogger(CreateSecurityGroupCmd.class.getName());
public class CreateNetworkGroupCmd extends BaseCmd {
public static final Logger s_logger = Logger.getLogger(CreateNetworkGroupCmd.class.getName());
private static final String s_name = "createnetworkgroupresponse";

View File

@ -9,8 +9,8 @@ import com.cloud.api.Parameter;
import com.cloud.api.response.SuccessResponse;
@Implementation(method="deleteNetworkGroup", manager=Manager.NetworkGroupManager)
public class DeleteSecurityGroupCmd extends BaseCmd {
public static final Logger s_logger = Logger.getLogger(DeleteSecurityGroupCmd.class.getName());
public class DeleteNetworkGroupCmd extends BaseCmd {
public static final Logger s_logger = Logger.getLogger(DeleteNetworkGroupCmd.class.getName());
private static final String s_name = "deletenetworkgroupresponse";
/////////////////////////////////////////////////////

View File

@ -32,7 +32,7 @@ import com.cloud.api.response.ListResponse;
import com.cloud.api.response.NetworkGroupResponse;
import com.cloud.async.executor.IngressRuleResultObject;
import com.cloud.async.executor.NetworkGroupResultObject;
import com.cloud.network.security.SecurityGroupRulesVO;
import com.cloud.network.security.NetworkGroupRulesVO;
@Implementation(method="searchForNetworkGroupRules", manager=Manager.NetworkGroupManager)
public class ListNetworkGroupsCmd extends BaseListCmd {
@ -87,7 +87,7 @@ public class ListNetworkGroupsCmd extends BaseListCmd {
@Override @SuppressWarnings("unchecked")
public ListResponse<NetworkGroupResponse> getResponse() {
List<SecurityGroupRulesVO> networkGroups = (List<SecurityGroupRulesVO>)getResponseObject();
List<NetworkGroupRulesVO> networkGroups = (List<NetworkGroupRulesVO>)getResponseObject();
List<NetworkGroupResultObject> groupResultObjs = NetworkGroupResultObject.transposeNetworkGroups(networkGroups);
ListResponse<NetworkGroupResponse> response = new ListResponse<NetworkGroupResponse>();

View File

@ -11,7 +11,7 @@ import com.cloud.async.AsyncJobResult;
import com.cloud.async.AsyncJobVO;
import com.cloud.async.BaseAsyncJobExecutor;
import com.cloud.network.security.IngressRuleVO;
import com.cloud.network.security.SecurityGroupRulesVO;
import com.cloud.network.security.NetworkGroupRulesVO;
import com.cloud.network.security.NetworkGroupVO;
import com.cloud.serializer.GsonHelper;
import com.cloud.server.ManagementServer;
@ -67,9 +67,9 @@ public class AuthorizeNetworkGroupIngressExecutor extends BaseAsyncJobExecutor {
private NetworkGroupResultObject composeResultObject(ManagementServer ms, Long accountId, String groupName, List<IngressRuleVO> addedRules) {
NetworkGroupVO networkGroup = ms.findNetworkGroupByName(accountId, groupName);
List<SecurityGroupRulesVO> groupRules = new ArrayList<SecurityGroupRulesVO>();
List<NetworkGroupRulesVO> groupRules = new ArrayList<NetworkGroupRulesVO>();
for (IngressRuleVO ingressRule : addedRules) {
SecurityGroupRulesVO groupRule = new SecurityGroupRulesVO(networkGroup.getId(), networkGroup.getName(), networkGroup.getDescription(), networkGroup.getDomainId(),
NetworkGroupRulesVO groupRule = new NetworkGroupRulesVO(networkGroup.getId(), networkGroup.getName(), networkGroup.getDescription(), networkGroup.getDomainId(),
networkGroup.getAccountId(), networkGroup.getAccountName(), ingressRule.getId(), ingressRule.getStartPort(), ingressRule.getEndPort(),
ingressRule.getProtocol(), ingressRule.getAllowedNetworkId(), ingressRule.getAllowedNetworkGroup(), ingressRule.getAllowedNetGrpAcct(),
ingressRule.getAllowedSourceIpCidr());

View File

@ -3,7 +3,7 @@ package com.cloud.async.executor;
import java.util.ArrayList;
import java.util.List;
import com.cloud.network.security.SecurityGroupRulesVO;
import com.cloud.network.security.NetworkGroupRulesVO;
import com.cloud.serializer.Param;
public class NetworkGroupResultObject {
@ -96,7 +96,7 @@ public class NetworkGroupResultObject {
this.ingressRules = ingressRules;
}
public static List<NetworkGroupResultObject> transposeNetworkGroups(List<SecurityGroupRulesVO> groups) {
public static List<NetworkGroupResultObject> transposeNetworkGroups(List<NetworkGroupRulesVO> groups) {
List<NetworkGroupResultObject> resultObjects = new ArrayList<NetworkGroupResultObject>();
if ((groups != null) && !groups.isEmpty()) {
@ -104,7 +104,7 @@ public class NetworkGroupResultObject {
NetworkGroupResultObject currentGroup = null;
List<Long> processedGroups = new ArrayList<Long>();
for (SecurityGroupRulesVO netGroupRule : groups) {
for (NetworkGroupRulesVO netGroupRule : groups) {
Long groupId = netGroupRule.getId();
if (!processedGroups.contains(groupId)) {
processedGroups.add(groupId);

View File

@ -34,22 +34,22 @@ import com.cloud.agent.api.PingRoutingWithNwGroupsCommand;
import com.cloud.agent.api.StartupCommand;
import com.cloud.host.HostVO;
import com.cloud.host.Status;
import com.cloud.network.security.SecurityGroupWorkVO.Step;
import com.cloud.network.security.NetworkGroupWorkVO.Step;
import com.cloud.network.security.dao.NetworkGroupWorkDao;
/**
* Listens for answers to ingress rules modification commands
*
*/
public class SecurityGroupListener implements Listener {
public static final Logger s_logger = Logger.getLogger(SecurityGroupListener.class.getName());
public class NetworkGroupListener implements Listener {
public static final Logger s_logger = Logger.getLogger(NetworkGroupListener.class.getName());
SecurityGroupManagerImpl _networkGroupManager;
NetworkGroupManagerImpl _networkGroupManager;
AgentManager _agentMgr;
NetworkGroupWorkDao _workDao;
public SecurityGroupListener(SecurityGroupManagerImpl networkGroupManager,
public NetworkGroupListener(NetworkGroupManagerImpl networkGroupManager,
AgentManager agentMgr, NetworkGroupWorkDao workDao) {
super();
_networkGroupManager = networkGroupManager;

View File

@ -21,8 +21,8 @@ import java.util.HashMap;
import java.util.List;
import com.cloud.api.commands.AuthorizeNetworkGroupIngressCmd;
import com.cloud.api.commands.CreateSecurityGroupCmd;
import com.cloud.api.commands.DeleteSecurityGroupCmd;
import com.cloud.api.commands.CreateNetworkGroupCmd;
import com.cloud.api.commands.DeleteNetworkGroupCmd;
import com.cloud.api.commands.ListNetworkGroupsCmd;
import com.cloud.api.commands.RevokeNetworkGroupIngressCmd;
import com.cloud.exception.InvalidParameterValueException;
@ -37,7 +37,7 @@ import com.cloud.vm.State;
* Ensures that network firewall rules stay updated as VMs go up and down
*
*/
public interface SecurityGroupManager extends Manager {
public interface NetworkGroupManager extends Manager {
public static final String DEFAULT_GROUP_NAME = "default";
public static final String DEFAULT_GROUP_DESCRIPTION = "Default Network Group";
@ -53,7 +53,7 @@ public interface SecurityGroupManager extends Manager {
* @param command the command specifying the name and description
* @return the created network group if successful, null otherwise
*/
public NetworkGroupVO createNetworkGroup(CreateSecurityGroupCmd command) throws PermissionDeniedException, InvalidParameterValueException;
public NetworkGroupVO createNetworkGroup(CreateNetworkGroupCmd command) throws PermissionDeniedException, InvalidParameterValueException;
public NetworkGroupVO createDefaultNetworkGroup( Long accountId);
@ -63,14 +63,14 @@ public interface SecurityGroupManager extends Manager {
boolean revokeNetworkGroupIngress(RevokeNetworkGroupIngressCmd cmd);
public void deleteNetworkGroup(DeleteSecurityGroupCmd cmd) throws ResourceInUseException, PermissionDeniedException, InvalidParameterValueException;
public void deleteNetworkGroup(DeleteNetworkGroupCmd cmd) throws ResourceInUseException, PermissionDeniedException, InvalidParameterValueException;
/**
* Search for network groups and associated ingress rules for the given account, domain, group name, and/or keyword.
* The search terms are specified in the search criteria.
* @return the list of network groups and associated ingress rules
*/
public List<SecurityGroupRulesVO> searchForNetworkGroupRules(ListNetworkGroupsCmd cmd) throws PermissionDeniedException, InvalidParameterValueException;
public List<NetworkGroupRulesVO> searchForNetworkGroupRules(ListNetworkGroupsCmd cmd) throws PermissionDeniedException, InvalidParameterValueException;
public void fullSync(long agentId, HashMap<String, Pair<Long, Long>> newGroupStates);

View File

@ -46,8 +46,8 @@ import com.cloud.agent.manager.Commands;
import com.cloud.api.BaseCmd;
import com.cloud.api.ServerApiException;
import com.cloud.api.commands.AuthorizeNetworkGroupIngressCmd;
import com.cloud.api.commands.CreateSecurityGroupCmd;
import com.cloud.api.commands.DeleteSecurityGroupCmd;
import com.cloud.api.commands.CreateNetworkGroupCmd;
import com.cloud.api.commands.DeleteNetworkGroupCmd;
import com.cloud.api.commands.ListNetworkGroupsCmd;
import com.cloud.api.commands.RevokeNetworkGroupIngressCmd;
import com.cloud.configuration.dao.ConfigurationDao;
@ -57,7 +57,7 @@ import com.cloud.exception.AgentUnavailableException;
import com.cloud.exception.InvalidParameterValueException;
import com.cloud.exception.PermissionDeniedException;
import com.cloud.exception.ResourceInUseException;
import com.cloud.network.security.SecurityGroupWorkVO.Step;
import com.cloud.network.security.NetworkGroupWorkVO.Step;
import com.cloud.network.security.dao.IngressRuleDao;
import com.cloud.network.security.dao.NetworkGroupDao;
import com.cloud.network.security.dao.NetworkGroupRulesDao;
@ -86,9 +86,9 @@ import com.cloud.vm.State;
import com.cloud.vm.UserVmVO;
import com.cloud.vm.dao.UserVmDao;
@Local(value={SecurityGroupManager.class})
public class SecurityGroupManagerImpl implements SecurityGroupManager {
public static final Logger s_logger = Logger.getLogger(SecurityGroupManagerImpl.class.getName());
@Local(value={NetworkGroupManager.class})
public class NetworkGroupManagerImpl implements NetworkGroupManager {
public static final Logger s_logger = Logger.getLogger(NetworkGroupManagerImpl.class.getName());
@Inject NetworkGroupDao _networkGroupDao;
@Inject IngressRuleDao _ingressRuleDao;
@ -110,7 +110,7 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
boolean _enabled = false;
SecurityGroupListener _answerListener;
NetworkGroupListener _answerListener;
private final class NetworkGroupVOComparator implements
@ -319,7 +319,7 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
Transaction txn = Transaction.currentTxn();
txn.start();
VmRulesetLogVO log = null;
SecurityGroupWorkVO work = null;
NetworkGroupWorkVO work = null;
UserVm vm = null;
try {
vm = _userVMDao.acquire(vmId);
@ -339,7 +339,7 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
}
work = _workDao.findByVmIdStep(vmId, Step.Scheduled);
if (work == null) {
work = new SecurityGroupWorkVO(vmId, null, null, SecurityGroupWorkVO.Step.Scheduled, null);
work = new NetworkGroupWorkVO(vmId, null, null, NetworkGroupWorkVO.Step.Scheduled, null);
work = _workDao.persist(work);
}
@ -846,7 +846,7 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
}
@Override
public NetworkGroupVO createNetworkGroup(CreateSecurityGroupCmd cmd) throws PermissionDeniedException, InvalidParameterValueException {
public NetworkGroupVO createNetworkGroup(CreateNetworkGroupCmd cmd) throws PermissionDeniedException, InvalidParameterValueException {
if (!_enabled) {
return null;
}
@ -945,7 +945,7 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
if (!_enabled) {
return false;
}
_answerListener = new SecurityGroupListener(this, _agentMgr, _workDao);
_answerListener = new NetworkGroupListener(this, _agentMgr, _workDao);
_agentMgr.registerForHostEvents(_answerListener, true, true, true);
_serverId = ((ManagementServer)ComponentLocator.getComponent(ManagementServer.Name)).getId();
@ -983,11 +983,11 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
if (!_enabled) {
return null;
}
NetworkGroupVO groupVO = _networkGroupDao.findByAccountAndName(accountId, SecurityGroupManager.DEFAULT_GROUP_NAME);
NetworkGroupVO groupVO = _networkGroupDao.findByAccountAndName(accountId, NetworkGroupManager.DEFAULT_GROUP_NAME);
if (groupVO == null ) {
Account accVO = _accountDao.findById(accountId);
if (accVO != null) {
return createNetworkGroup(SecurityGroupManager.DEFAULT_GROUP_NAME, SecurityGroupManager.DEFAULT_GROUP_DESCRIPTION, accVO.getDomainId(), accVO.getId(), accVO.getAccountName());
return createNetworkGroup(NetworkGroupManager.DEFAULT_GROUP_NAME, NetworkGroupManager.DEFAULT_GROUP_DESCRIPTION, accVO.getDomainId(), accVO.getId(), accVO.getAccountName());
}
}
return groupVO;
@ -998,7 +998,7 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
if (s_logger.isTraceEnabled()) {
s_logger.trace("Checking the database");
}
final SecurityGroupWorkVO work = _workDao.take(_serverId);
final NetworkGroupWorkVO work = _workDao.take(_serverId);
if (work == null) {
return;
}
@ -1111,7 +1111,7 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
@DB
@Override
public void deleteNetworkGroup(DeleteSecurityGroupCmd cmd) throws ResourceInUseException, PermissionDeniedException, InvalidParameterValueException{
public void deleteNetworkGroup(DeleteNetworkGroupCmd cmd) throws ResourceInUseException, PermissionDeniedException, InvalidParameterValueException{
String name = cmd.getName();
String accountName = cmd.getAccountName();
Long domainId = cmd.getDomainId();
@ -1171,7 +1171,7 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
return;
}
if (group.getName().equalsIgnoreCase(SecurityGroupManager.DEFAULT_GROUP_NAME)) {
if (group.getName().equalsIgnoreCase(NetworkGroupManager.DEFAULT_GROUP_NAME)) {
txn.rollback();
throw new PermissionDeniedException("The network group default is reserved");
}
@ -1192,7 +1192,7 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
}
@Override
public List<SecurityGroupRulesVO> searchForNetworkGroupRules(ListNetworkGroupsCmd cmd) throws PermissionDeniedException, InvalidParameterValueException {
public List<NetworkGroupRulesVO> searchForNetworkGroupRules(ListNetworkGroupsCmd cmd) throws PermissionDeniedException, InvalidParameterValueException {
Account account = (Account)UserContext.current().getAccountObject();
Long domainId = cmd.getDomainId();
String accountName = cmd.getAccountName();
@ -1250,10 +1250,10 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
}
}
Filter searchFilter = new Filter(SecurityGroupRulesVO.class, "id", true, cmd.getStartIndex(), cmd.getPageSizeVal());
Filter searchFilter = new Filter(NetworkGroupRulesVO.class, "id", true, cmd.getStartIndex(), cmd.getPageSizeVal());
Object keyword = cmd.getKeyword();
SearchBuilder<SecurityGroupRulesVO> sb = _networkGroupRulesDao.createSearchBuilder();
SearchBuilder<NetworkGroupRulesVO> sb = _networkGroupRulesDao.createSearchBuilder();
sb.and("accountId", sb.entity().getAccountId(), SearchCriteria.Op.EQ);
sb.and("name", sb.entity().getName(), SearchCriteria.Op.EQ);
sb.and("domainId", sb.entity().getDomainId(), SearchCriteria.Op.EQ);
@ -1265,13 +1265,13 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
sb.join("domainSearch", domainSearch, sb.entity().getDomainId(), domainSearch.entity().getId(), JoinBuilder.JoinType.INNER);
}
SearchCriteria<SecurityGroupRulesVO> sc = sb.create();
SearchCriteria<NetworkGroupRulesVO> sc = sb.create();
if (accountId != null) {
sc.setParameters("accountId", accountId);
if (networkGroup != null) {
sc.setParameters("name", networkGroup);
} else if (keyword != null) {
SearchCriteria<SecurityGroupRulesVO> ssc = _networkGroupRulesDao.createSearchCriteria();
SearchCriteria<NetworkGroupRulesVO> ssc = _networkGroupRulesDao.createSearchCriteria();
ssc.addOr("name", SearchCriteria.Op.LIKE, "%" + keyword + "%");
ssc.addOr("description", SearchCriteria.Op.LIKE, "%" + keyword + "%");
sc.addAnd("name", SearchCriteria.Op.SC, ssc);
@ -1290,13 +1290,13 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
return _networkGroupRulesDao.search(sc, searchFilter);
}
private List<SecurityGroupRulesVO> listNetworkGroupRulesByVM(long vmId) {
List<SecurityGroupRulesVO> results = new ArrayList<SecurityGroupRulesVO>();
private List<NetworkGroupRulesVO> listNetworkGroupRulesByVM(long vmId) {
List<NetworkGroupRulesVO> results = new ArrayList<NetworkGroupRulesVO>();
List<NetworkGroupVMMapVO> networkGroupMappings = _networkGroupVMMapDao.listByInstanceId(vmId);
if (networkGroupMappings != null) {
for (NetworkGroupVMMapVO networkGroupMapping : networkGroupMappings) {
NetworkGroupVO group = _networkGroupDao.findById(networkGroupMapping.getNetworkGroupId());
List<SecurityGroupRulesVO> rules = _networkGroupRulesDao.listNetworkGroupRules(group.getAccountId(), networkGroupMapping.getGroupName());
List<NetworkGroupRulesVO> rules = _networkGroupRulesDao.listNetworkGroupRules(group.getAccountId(), networkGroupMapping.getGroupName());
if (rules != null) {
results.addAll(rules);
}
@ -1337,11 +1337,11 @@ public class SecurityGroupManagerImpl implements SecurityGroupManager {
private void cleanupUnfinishedWork() {
Date before = new Date(System.currentTimeMillis() - 30*1000l);
List<SecurityGroupWorkVO> unfinished = _workDao.findUnfinishedWork(before);
List<NetworkGroupWorkVO> unfinished = _workDao.findUnfinishedWork(before);
if (unfinished.size() > 0) {
s_logger.info("Network Group Work cleanup found " + unfinished.size() + " unfinished work items older than " + before.toString());
Set<Long> affectedVms = new HashSet<Long>();
for (SecurityGroupWorkVO work: unfinished) {
for (NetworkGroupWorkVO work: unfinished) {
affectedVms.add(work.getInstanceId());
}
scheduleRulesetUpdateToHosts(affectedVms, false, null);

View File

@ -204,7 +204,7 @@ import com.cloud.network.dao.LoadBalancerVMMapDao;
import com.cloud.network.dao.NetworkRuleConfigDao;
import com.cloud.network.dao.SecurityGroupDao;
import com.cloud.network.dao.SecurityGroupVMMapDao;
import com.cloud.network.security.SecurityGroupManager;
import com.cloud.network.security.NetworkGroupManager;
import com.cloud.network.security.NetworkGroupVO;
import com.cloud.network.security.dao.NetworkGroupDao;
import com.cloud.offering.NetworkOffering;
@ -368,7 +368,7 @@ public class ManagementServerImpl implements ManagementServer {
private final AsyncJobManager _asyncMgr;
private final TemplateManager _tmpltMgr;
private final SnapshotManager _snapMgr;
private final SecurityGroupManager _networkGroupMgr;
private final NetworkGroupManager _networkGroupMgr;
private final int _purgeDelay;
private final boolean _directAttachNetworkExternalIpAllocator;
private final PreallocatedLunDao _lunDao;
@ -463,7 +463,7 @@ public class ManagementServerImpl implements ManagementServer {
_asyncMgr = locator.getManager(AsyncJobManager.class);
_tmpltMgr = locator.getManager(TemplateManager.class);
_snapMgr = locator.getManager(SnapshotManager.class);
_networkGroupMgr = locator.getManager(SecurityGroupManager.class);
_networkGroupMgr = locator.getManager(NetworkGroupManager.class);
_uploadMonitor = locator.getManager(UploadMonitor.class);
_userAuthenticators = locator.getAdapters(UserAuthenticator.class);
@ -1874,7 +1874,7 @@ public class ManagementServerImpl implements ManagementServer {
}
Set<String> nameSet = new HashSet<String>(); //handle duplicate names -- allowed
nameSet.addAll(Arrays.asList(networkGroups));
nameSet.add(SecurityGroupManager.DEFAULT_GROUP_NAME);
nameSet.add(NetworkGroupManager.DEFAULT_GROUP_NAME);
networkGroups = nameSet.toArray(new String[nameSet.size()]);
List<NetworkGroupVO> networkGroupVOs = _networkSecurityGroupDao.findByAccountAndNames(accountId, networkGroups);
if (networkGroupVOs.size() != nameSet.size()) {
@ -1882,7 +1882,7 @@ public class ManagementServerImpl implements ManagementServer {
}
} else { //create a default group if necessary
if (offering.getGuestIpType() != NetworkOffering.GuestIpType.Virtualized && _networkGroupsEnabled) {
networkGroups = new String[]{SecurityGroupManager.DEFAULT_GROUP_NAME};
networkGroups = new String[]{NetworkGroupManager.DEFAULT_GROUP_NAME};
}
}

View File

@ -136,7 +136,7 @@ import com.cloud.network.dao.LoadBalancerDao;
import com.cloud.network.dao.LoadBalancerVMMapDao;
import com.cloud.network.dao.SecurityGroupDao;
import com.cloud.network.dao.SecurityGroupVMMapDao;
import com.cloud.network.security.SecurityGroupManager;
import com.cloud.network.security.NetworkGroupManager;
import com.cloud.network.security.NetworkGroupVO;
import com.cloud.offering.NetworkOffering;
import com.cloud.offering.ServiceOffering;
@ -246,7 +246,7 @@ public class UserVmManagerImpl implements UserVmManager {
@Inject AccountVlanMapDao _accountVlanMapDao;
@Inject StoragePoolDao _storagePoolDao;
@Inject VMTemplateHostDao _vmTemplateHostDao;
@Inject SecurityGroupManager _networkGroupManager;
@Inject NetworkGroupManager _networkGroupManager;
@Inject ServiceOfferingDao _serviceOfferingDao;
@Inject EventDao _eventDao = null;
@Inject InstanceGroupDao _vmGroupDao;