예제 #1
0
 def GetTargetURLForID(self, ID):
     target_obj = self.db.session.query(models.Target).get(ID)
     if not target_obj:
         cprint("Failing with ID: %s" % str(ID))
         raise InvalidTargetReference("Target doesn't exist with ID: %s" %
                                      str(ID))
     return target_obj.target_url
예제 #2
0
 def DeleteTarget(self, TargetURL=None, ID=None):
     if ID:
         target_obj = self.db.session.query(models.Target).get(ID)
     if TargetURL:
         target_obj = self.db.session.query(models.Target).filter_by(
             target_url=TargetURL).one()
     if not target_obj:
         raise InvalidTargetReference(
             "Target doesn't exist: " + str(ID) if ID else str(TargetURL))
     target_url = target_obj.target_url
     self.db.session.delete(target_obj)
     self.db.session.commit()
     self.config.CleanUpForTarget(target_url)
예제 #3
0
 def UpdateTarget(self, data_dict, TargetURL=None, ID=None):
     target_obj = None
     if ID:
         target_obj = self.db.session.query(models.Target).get(ID)
     if TargetURL:
         target_obj = self.db.session.query(models.Target).filter_by(target_url=TargetURL).one()
     if not target_obj:
         raise InvalidTargetReference(
             "Target doesn't exist: " + str(ID) if ID else str(TargetURL))
     # TODO: Updating all related attributes when one attribute is changed
     if data_dict.get("scope", None) is not None:
         target_obj.scope = self.config.ConvertStrToBool(data_dict.get("scope", None))
     self.db.session.commit()
예제 #4
0
 def GetTargetConfigForID(self, ID):
     target_obj = self.db.session.query(models.Target).get(ID)
     if not target_obj:
         raise InvalidTargetReference("Target doesn't exist: " + str(ID))
     return(self.DeriveTargetConfig(target_obj))