Beispiel #1
0
    def update(self, indicator, owner=None):
        """ add indicator to resource container """
        # resource object
        resource_obj = IndicatorObject()
        resource_type = get_resource_type(self.tc._indicators_regex, indicator)
        resource_obj.set_indicator(indicator, resource_type)  # set temporary resource id
        resource_obj.set_owner_name(owner)
        resource_obj.set_phase(2)  # set resource api phase (1 = add)

        # return object for modification
        return self._method_wrapper(resource_obj)
Beispiel #2
0
    def delete(self, indicator, owner=None):
        """ add indicator to resource container """
        # generate unique temporary id
        resource_id = indicator

        # resource object
        resource_obj = IndicatorObject()
        resource_obj.set_id(int(resource_id))  # set temporary resource id
        resource_obj.set_owner_name(owner)
        resource_obj.set_phase(2)  # set resource api phase (1 = add)

        # call delete to queue call
        wrapper = self._method_wrapper(resource_obj)
        wrapper.delete()
        # return object for modification
        return wrapper
Beispiel #3
0
    def add(self, indicator, owner=None, type=None):
        """ add indicator to resource container """

        if type is not None:
            if isinstance(type, IndicatorType):
                # generate unique temporary id
                resource_id = uuid.uuid4().int

                # resource object
                resource_obj = IndicatorObject()
                resource_obj.set_id(int(resource_id))  # set temporary resource id
                # resource_obj.set_resource_type(ResourceType(type.value)) # set this before indicator
                resource_obj.set_indicator(indicator, ResourceType(type.value), False)
                resource_obj.set_owner_name(owner)
                resource_obj.set_phase(1)  # set resource api phase (1 = add)

                # return object for modification
                return self._method_wrapper(resource_obj)
            else:
                raise AttributeError(ErrorCodes.e10060.name.format(indicator))

        elif SharedMethods.validate_indicator(self.tc._indicators_regex, indicator):
            # validate indicator

            # generate unique temporary id
            resource_id = uuid.uuid4().int

            # resource object
            resource_obj = IndicatorObject()
            resource_obj.set_id(int(resource_id))  # set temporary resource id
            resource_type = get_resource_type(self.tc._indicators_regex, indicator)
            resource_obj.set_indicator(indicator, resource_type, False)
            resource_obj.set_owner_name(owner)
            resource_obj.set_phase(1)  # set resource api phase (1 = add)

            # return object for modification
            return self._method_wrapper(resource_obj)
        else:
            raise AttributeError(ErrorCodes.e10050.name.format(indicator))