Exemple #1
0
    def create(**kwargs):
        """Create a configuration parameter for a datastore version."""

        # Do we already have a parameter in the db?
        # yes: and its deleted then modify the param
        # yes: and its not deleted then error on create.
        # no: then just create the new param
        ds_v_id = kwargs.get('datastore_version_id')
        config_param_name = kwargs.get('name')
        try:
            param = DatastoreConfigurationParameters.load_parameter_by_name(
                ds_v_id, config_param_name, show_deleted=True)
            if param.deleted == 1:
                param.restart_required = kwargs.get('restart_required')
                param.data_type = kwargs.get('data_type')
                param.max_size = kwargs.get('max_size')
                param.min_size = kwargs.get('min_size')
                param.deleted = 0
                param.save()
                return param
            else:
                raise exception.ConfigurationParameterAlreadyExists(
                    parameter_name=config_param_name,
                    datastore_version=ds_v_id)
        except exception.NotFound:
            pass
        config_param = DBDatastoreConfigurationParameters.create(**kwargs)
        return config_param
Exemple #2
0
    def create(**kwargs):
        """Create a configuration parameter for a datastore version."""

        # Do we already have a parameter in the db?
        # yes: and its deleted then modify the param
        # yes: and its not deleted then error on create.
        # no: then just create the new param
        ds_v_id = kwargs.get('datastore_version_id')
        config_param_name = kwargs.get('name')
        try:
            DatastoreConfigurationParameters.load_parameter_by_name(
                ds_v_id, config_param_name)
            raise exception.ConfigurationParameterAlreadyExists(
                parameter_name=config_param_name, datastore_version=ds_v_id)
        except exception.NotFound:
            pass
        config_param = DBDatastoreConfigurationParameters.create(**kwargs)
        return config_param