def render(self, session, feature, type, path, required,
               rebuild_required, default, description, **kwargs):
        dbfeature = Feature.get_unique(session, name=feature, feature_type=type,
                                       compel=True)

        if not dbfeature.paramdef_holder:
            dbfeature.paramdef_holder = FeatureParamDef()

        db_paramdef = ParamDefinition.get_unique(session, path=path,
                                                 holder=dbfeature.paramdef_holder,
                                                 compel=True)

        if default:
            validate_param_definition(db_paramdef.path, db_paramdef.value_type,
                                      default)
            db_paramdef.default = default

        if required is not None:
            db_paramdef.required = required
        if rebuild_required is not None:
            db_paramdef.rebuild_required = rebuild_required
        if description:
            db_paramdef.description = description

        session.flush()

        return
Esempio n. 2
0
    def render(self, session, archetype, path, required,
               rebuild_required, default, description, **kwargs):
        dbarchetype = Archetype.get_unique(session, archetype, compel=True)
        if not dbarchetype.is_compileable:
            raise ArgumentError("{0} is not compileable.".format(dbarchetype))

        if not dbarchetype.paramdef_holder:
            dbarchetype.paramdef_holder = ArchetypeParamDef()


        db_paramdef = ParamDefinition.get_unique(session, path=path,
                                                 holder=dbarchetype.paramdef_holder,
                                                 compel=True)
        if default:
            validate_param_definition(db_paramdef.path,
                                      db_paramdef.value_type,
                                      default)
            db_paramdef.default = default

        if required is not None:
            db_paramdef.required = required
        if rebuild_required is not None:
            db_paramdef.rebuild_required = rebuild_required
        if description:
            db_paramdef.description = description

        session.flush()

        return
    def render(self, session, archetype, template, path, value_type, required,
               rebuild_required, default, description, **kwargs):
        dbarchetype = Archetype.get_unique(session, archetype, compel=True)
        if not dbarchetype.is_compileable:
            raise ArgumentError("{0} is not compileable.".format(dbarchetype))

        if not dbarchetype.paramdef_holder:
            dbarchetype.paramdef_holder = ArchetypeParamDef()


        ## strip slash from path start and end
        if path.startswith("/"):
            path = path[1:]
        if path.endswith("/"):
            path = path[:-1]

        validate_param_definition(path, value_type, default)

        ParamDefinition.get_unique(session, path=path,
                                   holder=dbarchetype.paramdef_holder, preclude=True)

        db_paramdef = ParamDefinition(path=path,
                                      holder=dbarchetype.paramdef_holder,
                                      value_type=value_type, default=default,
                                      required=required, template=template,
                                      rebuild_required=rebuild_required,
                                      description=description)
        session.add(db_paramdef)

        session.flush()

        return
Esempio n. 4
0
    def render(self, session, feature, type, path, required, rebuild_required,
               default, description, **kwargs):
        dbfeature = Feature.get_unique(session,
                                       name=feature,
                                       feature_type=type,
                                       compel=True)

        if not dbfeature.paramdef_holder:
            dbfeature.paramdef_holder = FeatureParamDef()

        db_paramdef = ParamDefinition.get_unique(
            session, path=path, holder=dbfeature.paramdef_holder, compel=True)

        if default:
            validate_param_definition(db_paramdef.path, db_paramdef.value_type,
                                      default)
            db_paramdef.default = default

        if required is not None:
            db_paramdef.required = required
        if rebuild_required is not None:
            db_paramdef.rebuild_required = rebuild_required
        if description:
            db_paramdef.description = description

        session.flush()

        return
Esempio n. 5
0
    def render(self, session, feature, type, path, value_type, required,
               rebuild_required, default, description, **kwargs):
        dbfeature = Feature.get_unique(session, name=feature, feature_type=type,
                                       compel=True)

        if not dbfeature.paramdef_holder:
            dbfeature.paramdef_holder = FeatureParamDef()

        ## strip slash from path start and end
        if path.startswith("/"):
            path = path[1:]
        if path.endswith("/"):
            path = path[:-1]

        validate_param_definition(path, value_type, default)

        ParamDefinition.get_unique(session, path=path,
                                   holder=dbfeature.paramdef_holder, preclude=True)

        db_paramdef = ParamDefinition(path=path,
                                      holder=dbfeature.paramdef_holder,
                                      value_type=value_type, default=default,
                                      required=required,
                                      rebuild_required=rebuild_required,
                                      description=description)
        session.add(db_paramdef)

        session.flush()

        return
Esempio n. 6
0
    def render(self, session, archetype, template, path, value_type, required,
               rebuild_required, default, description, **kwargs):
        dbarchetype = Archetype.get_unique(session, archetype, compel=True)
        if not dbarchetype.is_compileable:
            raise ArgumentError("{0} is not compileable.".format(dbarchetype))

        if not dbarchetype.paramdef_holder:
            dbarchetype.paramdef_holder = ArchetypeParamDef()

        ## strip slash from path start and end
        if path.startswith("/"):
            path = path[1:]
        if path.endswith("/"):
            path = path[:-1]

        validate_param_definition(path, value_type, default)

        ParamDefinition.get_unique(session,
                                   path=path,
                                   holder=dbarchetype.paramdef_holder,
                                   preclude=True)

        db_paramdef = ParamDefinition(path=path,
                                      holder=dbarchetype.paramdef_holder,
                                      value_type=value_type,
                                      default=default,
                                      required=required,
                                      template=template,
                                      rebuild_required=rebuild_required,
                                      description=description)
        session.add(db_paramdef)

        session.flush()

        return