Ejemplo n.º 1
0
    def __changeGroupAttr(self,ibs_query,attrs,group_obj):
	for attr_name in attrs:
	    if group_obj.hasAttr(attr_name):
		ibs_query+=group_main.getActionManager().updateGroupAttrQuery(group_obj.getGroupID(),attr_name,attrs[attr_name])
	    else:
		ibs_query+=group_main.getActionManager().insertGroupAttrQuery(group_obj.getGroupID(),attr_name,attrs[attr_name])
	return ibs_query
Ejemplo n.º 2
0
 def __checkPoolUsageInGroups(self, ippool_obj):
     group_ids = group_main.getActionManager().getGroupIDsWithAttr(
         "ippool", ippool_obj.getIPpoolID())
     if len(group_ids) > 0:
         raise GeneralException(
             errorText("IPPOOL", "IPPOOL_USED_IN_GROUP") %
             ",".join(map(str, group_ids)))
Ejemplo n.º 3
0
 def delGroup(self,request):
     """
         delete a group
         group_name(string): name of group to be deleted
     """
     request.needAuthType(request.ADMIN)
     request.checkArgs("group_name")
     requester=request.getAuthNameObj()
     requester.canDo("ADD NEW GROUP")
     return group_main.getActionManager().delGroup(request["group_name"])
Ejemplo n.º 4
0
 def __checkChargeUsageInGroups(self, charge_obj, attr_name):
     group_ids = group_main.getActionManager().getGroupIDsWithAttr(
         attr_name, charge_obj.getChargeID())
     if len(group_ids) > 0:
         raise GeneralException(
             errorText("CHARGES", "CHARGE_USED_IN_GROUP") %
             (charge_obj.getChargeName(), ",".join(
                 map(
                     lambda _id: group_main.getLoader().getGroupByID(_id).
                     getGroupName(), group_ids))))
Ejemplo n.º 5
0
    def _changeGroupAttr(self, ibs_query, attrs, group_obj, admin_obj):
        for attr_name in attrs:
            if group_obj.hasAttr(attr_name):
                ibs_query += group_main.getActionManager(
                ).updateGroupAttrQuery(group_obj.getGroupID(), attr_name,
                                       attrs[attr_name])
                old_value = group_obj.getAttr(attr_name)
            else:
                ibs_query += group_main.getActionManager(
                ).insertGroupAttrQuery(group_obj.getGroupID(), attr_name,
                                       attrs[attr_name])
                old_value = self.AUDIT_LOG_NOVALUE

            if self.__generate_query_audit_log:
                self.genQueryAuditLogQuery(ibs_query, attr_name, old_value,
                                           attrs[attr_name], False, group_obj,
                                           admin_obj)

        return ibs_query
Ejemplo n.º 6
0
    def delGroup(self,request):
	"""
	    delete a group
	    group_name(string): name of group to be deleted
	"""
	request.needAuthType(request.ADMIN)
	request.checkArgs("group_name")
	requester=request.getAuthNameObj()
	requester.canDo("ADD NEW GROUP")
	return group_main.getActionManager().delGroup(request["group_name"])
Ejemplo n.º 7
0
 def addNewGroup(self,request):
     """
         add a new group
         group_name(string): name of new group, group_name is unique for each group
         comment(string):
     """
     request.needAuthType(request.ADMIN)
     request.checkArgs("group_name","comment")
     requester=request.getAuthNameObj()
     requester.canDo("ADD NEW GROUP")
     return group_main.getActionManager().addGroup(request["group_name"],request["comment"],requester.getAdminID())
Ejemplo n.º 8
0
    def addNewGroup(self,request):
	"""
	    add a new group
	    group_name(string): name of new group, group_name is unique	for each group
	    comment(string):
	"""
	request.needAuthType(request.ADMIN)
	request.checkArgs("group_name","comment")
	requester=request.getAuthNameObj()
	requester.canDo("ADD NEW GROUP")
	return group_main.getActionManager().addGroup(request["group_name"],request["comment"],requester.getAdminID())
Ejemplo n.º 9
0
 def updateGroup(self,request):
     """
         update group information
         
         group_id(integer): id of group that will be updated
         group_name(string): new group name
         comment(string): new group comment
         owner_name(strin): name of admin owner of group
     """
     request.needAuthType(request.ADMIN)
     request.checkArgs("group_id","group_name","comment","owner_name")
     request.getAuthNameObj().canDo("CHANGE GROUP",request["group_name"])
     return group_main.getActionManager().updateGroup(to_int(request["group_id"],"group id"),request["group_name"],request["comment"],request["owner_name"])
Ejemplo n.º 10
0
    def _deleteGroupAttr(self, ibs_query, attrs, group_obj, admin_obj):
        for attr_name in attrs:
            if group_obj.hasAttr(attr_name):
                ibs_query += group_main.getActionManager(
                ).deleteGroupAttrQuery(group_obj.getGroupID(), attr_name)

                if self.__generate_query_audit_log:
                    old_value = group_obj.getAttr(attr_name)
                    self.genQueryAuditLogQuery(ibs_query, attr_name, old_value,
                                               self.AUDIT_LOG_NOVALUE, False,
                                               group_obj, admin_obj)

        return ibs_query
Ejemplo n.º 11
0
    def updateGroup(self,request):
	"""
	    update group information
	    
	    group_id(integer): id of group that will be updated
	    group_name(string): new group name
	    comment(string): new group comment
	    owner_name(strin): name of admin owner of group
	"""
	request.needAuthType(request.ADMIN)
	request.checkArgs("group_id","group_name","comment","owner_name")
	request.getAuthNameObj().canDo("CHANGE GROUP",request["group_name"])
	return group_main.getActionManager().updateGroup(to_int(request["group_id"],"group id"),request["group_name"],request["comment"],request["owner_name"])
Ejemplo n.º 12
0
 def updateGroupAttrs(self,request):
     """
         update group attributes
         
         group_name(string): group name that attributes will be changed
         attrs(dic): dictionary of attr_name:attr_value. We say we want attr_name value to be attr_value
         to_del_attrs(dic): dic of attributes that should be deleted 
     """
     request.needAuthType(request.ADMIN)
     request.checkArgs("group_name","attrs","to_del_attrs")
     request.getAuthNameObj().canDo("CHANGE GROUP",request["group_name"])
     to_del_attrs=requestDicToList(request["to_del_attrs"])
     return group_main.getActionManager().updateGroupAttrs(request["group_name"],
                                                           request["attrs"],
                                                           to_del_attrs,
                                                           request.getAuthNameObj())
Ejemplo n.º 13
0
    def updateGroupAttrs(self,request):
	"""
	    update group attributes
	    
	    group_name(string): group name that attributes will be changed
	    attrs(dic): dictionary of attr_name:attr_value. We say we want attr_name value to be attr_value
	    to_del_attrs(dic): dic of attributes that should be deleted 
	"""
	request.needAuthType(request.ADMIN)
	request.checkArgs("group_name","attrs","to_del_attrs")
	request.getAuthNameObj().canDo("CHANGE GROUP",request["group_name"])
	to_del_attrs=requestDicToList(request["to_del_attrs"])
	return group_main.getActionManager().updateGroupAttrs(request["group_name"],
							      request["attrs"],
							      to_del_attrs,
							      request.getAuthNameObj())
Ejemplo n.º 14
0
    def __deleteGroupAttr(self,ibs_query,attrs,group_obj):
	for attr_name in attrs:
		ibs_query+=group_main.getActionManager().deleteGroupAttrQuery(group_obj.getGroupID(),attr_name)
    	return ibs_query
Ejemplo n.º 15
0
    def __checkChargeUsageInGroups(self,charge_obj,attr_name):
	group_ids=group_main.getActionManager().getGroupIDsWithAttr(attr_name,charge_obj.getChargeID())
	if len(group_ids)>0:
	    raise GeneralException(errorText("CHARGES","CHARGE_USED_IN_GROUP")%(charge_obj.getChargeName(),
							    ",".join(map(str,group_ids))))
Ejemplo n.º 16
0
    def __checkPoolUsageInGroups(self,ippool_obj):
	group_ids=group_main.getActionManager().getGroupIDsWithAttr("ippool",ippool_obj.getIPpoolID())
	if len(group_ids)>0:
	    raise GeneralException(errorText("IPPOOL","IPPOOL_USED_IN_GROUP")% ",".join(map(str,group_ids)))