def __init__(self): self.log_name = self.name self.module = self.__module__ log.Logger.__init__(self, log.get_default()) self._restorators = serialization.get_registry() self._agents = get_agent_registry() self._views = get_view_registry() self._initial_data = get_initial_data_registry() self._adapters = iadapter.AdapterRegistry() self._models = model.get_registry() self._migrations = migration.get_registry()
from feat.common import adapter from feat.models import model, value, action from feat.models import effect, call, getter, setter import demo_service register = model.get_registry().register @adapter.register(demo_service.Service, model.IModel) class Service(model.Model): model.identity("service") model.attribute("size", value.Integer(), call.source_call("count_documents")) model.child("documents", model="service.documents") class CreateDocument(action.Action): action.param("category", value.String()) action.param("name", value.String()) action.param("url", value.String()) action.effect(call.source_perform("add_document")) @register class Documents(model.Collection): model.identity("service.documents") model.child_model("service.documents.CATEGORY") model.child_names(call.source_call("iter_categories")) model.child_view(effect.context_value("key")) model.action("post", CreateDocument, label="Create Document")