Example #1
0
def activity_state_delete(req_dict):
    rogueparams = set(req_dict['params']) - set(["activityId", "agent", "stateId", "registration"])
    if rogueparams:
        raise ParamError("The delete activity state request contained unexpected parameters: %s" % ", ".join(rogueparams))

    try:
        req_dict['params']['activityId']
    except KeyError:
        err_msg = "Error -- activity_state - method = %s, but activityId parameter is missing.." % req_dict['method']
        raise ParamError(err_msg)
    if not 'activity_state_agent_validated' in req_dict:
        try:
            req_dict['params']['agent']
        except KeyError:
            err_msg = "Error -- activity_state - method = %s, but agent parameter is missing.." % req_dict['method']
            raise ParamError(err_msg)

    if 'params' in req_dict and 'registration' in req_dict['params']:
        if not validate_uuid(req_dict['params']['registration']):
            raise ParamError("%s is not a valid uuid for the registration parameter")
    
    # Extra validation if oauth
    if req_dict['auth']['type'] == 'oauth':
        validate_oauth_state_or_profile_agent(req_dict, "state")
    return req_dict
def activity_state_delete(req_dict):
    rogueparams = set(req_dict["params"]) - set(["activityId", "agent", "stateId", "registration"])
    if rogueparams:
        raise ParamError(
            "The delete activity state request contained unexpected parameters: %s" % ", ".join(rogueparams)
        )

    try:
        req_dict["params"]["activityId"]
    except KeyError:
        err_msg = "Error -- activity_state - method = %s, but activityId parameter is missing.." % req_dict["method"]
        raise ParamError(err_msg)
    if not "activity_state_agent_validated" in req_dict:
        try:
            req_dict["params"]["agent"]
        except KeyError:
            err_msg = "Error -- activity_state - method = %s, but agent parameter is missing.." % req_dict["method"]
            raise ParamError(err_msg)

    if "params" in req_dict and "registration" in req_dict["params"]:
        if not validate_uuid(req_dict["params"]["registration"]):
            raise ParamError("%s is not a valid uuid for the registration parameter")

    # Extra validation if oauth
    if req_dict["auth"]["type"] == "oauth":
        validate_oauth_state_or_profile_agent(req_dict, "state")
    return req_dict
def activity_state_post(req_dict):
    rogueparams = set(req_dict["params"]) - set(["activityId", "agent", "stateId", "registration"])
    if rogueparams:
        raise ParamError("The post activity state request contained unexpected parameters: %s" % ", ".join(rogueparams))

    try:
        req_dict["params"]["activityId"]
    except KeyError:
        err_msg = "Error -- activity_state - method = %s, but activityId parameter is missing.." % req_dict["method"]
        raise ParamError(err_msg)
    if not "activity_state_agent_validated" in req_dict:
        try:
            req_dict["params"]["agent"]
        except KeyError:
            err_msg = "Error -- activity_state - method = %s, but agent parameter is missing.." % req_dict["method"]
            raise ParamError(err_msg)
    try:
        req_dict["params"]["stateId"]
    except KeyError:
        err_msg = "Error -- activity_state - method = %s, but stateId parameter is missing.." % req_dict["method"]
        raise ParamError(err_msg)

    if "params" in req_dict and "registration" in req_dict["params"]:
        if not validate_uuid(req_dict["params"]["registration"]):
            raise ParamError("%s is not a valid uuid for the registration parameter")

    if "headers" not in req_dict or (
        "CONTENT_TYPE" not in req_dict["headers"] or req_dict["headers"]["CONTENT_TYPE"] != "application/json"
    ):
        err_msg = "The content type for activity state POSTs must be application/json"
        raise ParamError(err_msg)

    # Must have body included for state
    if "body" not in req_dict:
        err_msg = "Could not find the state"
        raise ParamError(err_msg)

    # Extra validation if oauth
    if req_dict["auth"]["type"] == "oauth":
        validate_oauth_state_or_profile_agent(req_dict, "state")

    # Set state
    req_dict["state"] = req_dict.pop("raw_body", req_dict.pop("body", None))
    return req_dict
Example #4
0
def activity_state_post(req_dict):
    rogueparams = set(req_dict['params']) - set(["activityId", "agent", "stateId", "registration"])
    if rogueparams:
        raise ParamError("The post activity state request contained unexpected parameters: %s" % ", ".join(rogueparams))

    try:
        req_dict['params']['activityId']
    except KeyError:
        err_msg = "Error -- activity_state - method = %s, but activityId parameter is missing.." % req_dict['method']
        raise ParamError(err_msg)
    if not 'activity_state_agent_validated' in req_dict:
        try:
            req_dict['params']['agent']
        except KeyError:
            err_msg = "Error -- activity_state - method = %s, but agent parameter is missing.." % req_dict['method']
            raise ParamError(err_msg)
    try:
        req_dict['params']['stateId']
    except KeyError:
        err_msg = "Error -- activity_state - method = %s, but stateId parameter is missing.." % req_dict['method']
        raise ParamError(err_msg)

    if 'params' in req_dict and 'registration' in req_dict['params']:
        if not validate_uuid(req_dict['params']['registration']):
            raise ParamError("%s is not a valid uuid for the registration parameter")

    if 'headers' not in req_dict or ('CONTENT_TYPE' not in req_dict['headers'] or req_dict['headers']['CONTENT_TYPE'] != "application/json"):
        err_msg = "The content type for activity state POSTs must be application/json"
        raise ParamError(err_msg)
    
    # Must have body included for state
    if 'body' not in req_dict:
        err_msg = "Could not find the state"
        raise ParamError(err_msg)
    
    # Extra validation if oauth
    if req_dict['auth']['type'] == 'oauth':
        validate_oauth_state_or_profile_agent(req_dict, "state")

    # Set state
    req_dict['state'] = req_dict.pop('raw_body', req_dict.pop('body', None))
    return req_dict