'Execute the main code path, and handle the request
:return: none'

def process_request(self):

    location = self.module.params.get('location')
    group_name = self.module.params.get('name')
    parent_name = self.module.params.get('parent')
    group_description = self.module.params.get('description')
    state = self.module.params.get('state')
    self._set_clc_credentials_from_env()
    self.group_dict = self._get_group_tree_for_datacenter(datacenter=location)
    if (state == 'absent'):
        (changed, group, requests) = self._ensure_group_is_absent(group_name=group_name, parent_name=parent_name)
        if requests:
            self._wait_for_requests_to_complete(requests)
    else:
        (changed, group) = self._ensure_group_is_present(group_name=group_name, parent_name=parent_name, group_description=group_description)
    try:
        group = group.data
    except AttributeError:
        group = group_name
    self.module.exit_json(changed=changed, group=group)
