def METHOD_NAME(self):
    if self.data.get('connectionInfo'):
        for connection_hash in self.data.get('connectionInfo'):
            if connection_hash.get('name') == 'Host':
                resource_name = connection_hash.get('value')
    elif self.data.get('name'):
        resource_name = self.data.get('name')
    else:
        msg = 'A "name" or "connectionInfo" must be provided inside the "data" field for this operation. '
        msg += 'If a "connectionInfo" is provided, the "Host" name is considered as the "name" for the resource.'
        raise OneViewModuleValueError(msg.format())
    resource = self.resource_client.get_by_name(resource_name)
    if self.state == 'present':
        changed, msg, san_manager = self._present(resource)
        return dict(changed=changed, msg=msg, ansible_facts=dict(san_manager=san_manager))
    elif self.state == 'absent':
        return self.resource_absent(resource, method='remove')
    elif self.state == 'connection_information_set':
        changed, msg, san_manager = self._connection_information_set(resource)
        return dict(changed=changed, msg=msg, ansible_facts=dict(san_manager=san_manager))