コード例 #1
0
def validate_pagination_limit():
    request_args = u.get_request_args()
    if 'limit' in request_args:
        if types.is_int(request_args['limit']):
            if not int(request_args['limit']) > 0:
                raise ex.SaharaException(_("'limit' must be positive integer"),
                                         400)
        else:
            raise ex.SaharaException(_("'limit' must be positive integer"),
                                     400)
コード例 #2
0
def validate_sorting_job_binaries():
    field = get_sorting_field()
    if field is None:
        return
    if field not in ['id', 'name', 'created_at', 'updated_at']:
        raise ex.SaharaException(
            _("Unknown field for sorting %s") % field, 400)
コード例 #3
0
def validate_sorting_clusters():
    field = get_sorting_field()
    if field is None:
        return
    if field not in ['id', 'name', 'plugin_name', 'hadoop_version', 'status']:
        raise ex.SaharaException(
            _("Unknown field for sorting %s") % field, 400)
コード例 #4
0
def validate_sorting_job_executions():
    field = get_sorting_field()
    if field is None:
        return
    if field not in ['id', 'job_template', 'cluster', 'status']:
        raise ex.SaharaException(
            _("Unknown field for sorting %s") % field, 400)
コード例 #5
0
def validate_sorting_node_group_templates():
    field = get_sorting_field()
    if field is None:
        return
    if field not in ['id', 'name', 'plugin_name', 'hadoop_version',
                     'created_at', 'updated_at']:
        raise ex.SaharaException(
            _("Unknown field for sorting %s") % field, 400)
コード例 #6
0
def get_config_value(service, name, cluster=None):
    if cluster:
        for ng in cluster.node_groups:
            cl_param = ng.configuration().get(service, {}).get(name)
            if cl_param is not None:
                return cl_param

    for c in get_plugin_configs():
        if c.applicable_target == service and c.name == name:
            return c.default_value

    raise ex.SaharaException("Unable get parameter '%s' from service %s", name,
                             service)
コード例 #7
0
    def get_session(self, session_type=SESSION_TYPE_INSECURE):
        '''Return a Session for the requested type

        :param session_type: the type of Session to get, if None an insecure
        session will be returned.

        :raises SaharaException: if the requested session type is not
        found.
        '''
        session_function = self._session_funcs.get(session_type)
        if session_function:
            return session_function()
        else:
            LOG.error('Requesting an unknown session type (type: {type})'.
                      format(type=session_type))
            raise ex.SaharaException(
                _('Session type {type} not recognized').
                format(type=session_type))
コード例 #8
0
def _generate_error(errors):
    message = [_get_path(list(e.path)) + e.message for e in errors]
    if message:
        return ex.SaharaException('\n'.join(message), "VALIDATION_ERROR")