Search in sources :

Example 1 with RendererModelFactory

use of org.incode.module.document.dom.impl.applicability.RendererModelFactory in project estatio by estatio.

the class DocumentTemplate method newRendererModelFactory.

@Programmatic
public RendererModelFactory newRendererModelFactory(final Object domainObject) {
    final Class<?> domainObjectClass = domainObject.getClass();
    final com.google.common.base.Optional<Applicability> applicabilityIfAny = FluentIterable.from(getAppliesTo()).filter(applicability -> applies(applicability, domainObjectClass)).first();
    if (!applicabilityIfAny.isPresent()) {
        return null;
    }
    final RendererModelFactory rendererModelFactory = (RendererModelFactory) classService.instantiate(applicabilityIfAny.get().getRendererModelFactoryClassName());
    serviceRegistry2.injectServicesInto(rendererModelFactory);
    return rendererModelFactory;
}
Also used : DocumentType(org.incode.module.document.dom.impl.types.DocumentType) EventHandler(org.axonframework.eventhandling.annotation.EventHandler) SortedSet(java.util.SortedSet) FqcnType(org.incode.module.document.dom.types.FqcnType) URL(java.net.URL) RendererFromCharsToCharsWithPreviewToUrl(org.incode.module.document.dom.impl.renderers.RendererFromCharsToCharsWithPreviewToUrl) Unique(javax.jdo.annotations.Unique) StringUtils(org.apache.commons.lang3.StringUtils) JDOHelper(javax.jdo.JDOHelper) Collection(org.apache.isis.applib.annotation.Collection) DomainObjectLayout(org.apache.isis.applib.annotation.DomainObjectLayout) ActionLayout(org.apache.isis.applib.annotation.ActionLayout) TitleService(org.apache.isis.applib.services.title.TitleService) FluentIterable(com.google.common.collect.FluentIterable) ApplicationException(org.apache.isis.applib.ApplicationException) IdentityType(javax.jdo.annotations.IdentityType) FactoryService(org.apache.isis.applib.services.factory.FactoryService) ClassNameViewModel(org.incode.module.document.dom.services.ClassNameViewModel) Blob(org.apache.isis.applib.value.Blob) RendererModelFactory(org.incode.module.document.dom.impl.applicability.RendererModelFactory) TranslatableString(org.apache.isis.applib.services.i18n.TranslatableString) ServiceRegistry2(org.apache.isis.applib.services.registry.ServiceRegistry2) Applicability(org.incode.module.document.dom.impl.applicability.Applicability) RendererFromCharsToBytes(org.incode.module.document.dom.impl.renderers.RendererFromCharsToBytes) MemberOrder(org.apache.isis.applib.annotation.MemberOrder) ApplicabilityRepository(org.incode.module.document.dom.impl.applicability.ApplicabilityRepository) List(java.util.List) DomainObject(org.apache.isis.applib.annotation.DomainObject) RendererFromCharsToChars(org.incode.module.document.dom.impl.renderers.RendererFromCharsToChars) TransactionService(org.apache.isis.applib.services.xactn.TransactionService) DocumentModule(org.incode.module.document.DocumentModule) AttachmentAdvisorAttachToNone(org.incode.module.document.dom.impl.applicability.AttachmentAdvisorAttachToNone) Clob(org.apache.isis.applib.value.Clob) Setter(lombok.Setter) PersistenceCapable(javax.jdo.annotations.PersistenceCapable) Renderer(org.incode.module.document.dom.impl.renderers.Renderer) AtPathType(org.incode.module.document.dom.types.AtPathType) Getter(lombok.Getter) Column(javax.jdo.annotations.Column) DomainService(org.apache.isis.applib.annotation.DomainService) TreeSet(java.util.TreeSet) Programmatic(org.apache.isis.applib.annotation.Programmatic) AttachmentAdvisor(org.incode.module.document.dom.impl.applicability.AttachmentAdvisor) AttachmentAdvisorClassNameService(org.incode.module.document.dom.spi.AttachmentAdvisorClassNameService) Inject(javax.inject.Inject) Indices(javax.jdo.annotations.Indices) Uniques(javax.jdo.annotations.Uniques) Inheritance(javax.jdo.annotations.Inheritance) Subscribe(com.google.common.eventbus.Subscribe) Parameter(org.apache.isis.applib.annotation.Parameter) RenderingStrategy(org.incode.module.document.dom.impl.rendering.RenderingStrategy) Queries(javax.jdo.annotations.Queries) Action(org.apache.isis.applib.annotation.Action) NatureOfService(org.apache.isis.applib.annotation.NatureOfService) Property(org.apache.isis.applib.annotation.Property) RendererFromBytesToBytes(org.incode.module.document.dom.impl.renderers.RendererFromBytesToBytes) RendererFromBytesToBytesWithPreviewToUrl(org.incode.module.document.dom.impl.renderers.RendererFromBytesToBytesWithPreviewToUrl) RendererFromCharsToBytesWithPreviewToUrl(org.incode.module.document.dom.impl.renderers.RendererFromCharsToBytesWithPreviewToUrl) IOException(java.io.IOException) Where(org.apache.isis.applib.annotation.Where) InheritanceStrategy(javax.jdo.annotations.InheritanceStrategy) AbstractSubscriber(org.apache.isis.applib.AbstractSubscriber) BookmarkPolicy(org.apache.isis.applib.annotation.BookmarkPolicy) LocalDate(org.joda.time.LocalDate) Mixin(org.apache.isis.applib.annotation.Mixin) SemanticsOf(org.apache.isis.applib.annotation.SemanticsOf) Editing(org.apache.isis.applib.annotation.Editing) RendererFromBytesToChars(org.incode.module.document.dom.impl.renderers.RendererFromBytesToChars) RendererFromBytesToCharsWithPreviewToUrl(org.incode.module.document.dom.impl.renderers.RendererFromBytesToCharsWithPreviewToUrl) ParameterLayout(org.apache.isis.applib.annotation.ParameterLayout) RendererModelFactoryClassNameService(org.incode.module.document.dom.spi.RendererModelFactoryClassNameService) Index(javax.jdo.annotations.Index) Contributed(org.apache.isis.applib.annotation.Contributed) BackgroundService2(org.apache.isis.applib.services.background.BackgroundService2) ClassService(org.incode.module.document.dom.services.ClassService) Applicability(org.incode.module.document.dom.impl.applicability.Applicability) RendererModelFactory(org.incode.module.document.dom.impl.applicability.RendererModelFactory) Programmatic(org.apache.isis.applib.annotation.Programmatic)

Example 2 with RendererModelFactory

use of org.incode.module.document.dom.impl.applicability.RendererModelFactory in project estatio by estatio.

the class DocumentTemplate method newRendererModel.

@Programmatic
public Object newRendererModel(final Object domainObject) {
    final RendererModelFactory rendererModelFactory = newRendererModelFactory(domainObject);
    if (rendererModelFactory == null) {
        throw new IllegalStateException(String.format("For domain template %s, could not locate Applicability for domain object: %s", getName(), domainObject.getClass().getName()));
    }
    final Object rendererModel = rendererModelFactory.newRendererModel(this, domainObject);
    serviceRegistry2.injectServicesInto(rendererModel);
    return rendererModel;
}
Also used : DomainObject(org.apache.isis.applib.annotation.DomainObject) RendererModelFactory(org.incode.module.document.dom.impl.applicability.RendererModelFactory) Programmatic(org.apache.isis.applib.annotation.Programmatic)

Aggregations

DomainObject (org.apache.isis.applib.annotation.DomainObject)2 Programmatic (org.apache.isis.applib.annotation.Programmatic)2 FluentIterable (com.google.common.collect.FluentIterable)1 Subscribe (com.google.common.eventbus.Subscribe)1 IOException (java.io.IOException)1 URL (java.net.URL)1 List (java.util.List)1 SortedSet (java.util.SortedSet)1 TreeSet (java.util.TreeSet)1 Inject (javax.inject.Inject)1 JDOHelper (javax.jdo.JDOHelper)1 Column (javax.jdo.annotations.Column)1 IdentityType (javax.jdo.annotations.IdentityType)1 Index (javax.jdo.annotations.Index)1 Indices (javax.jdo.annotations.Indices)1 Inheritance (javax.jdo.annotations.Inheritance)1 InheritanceStrategy (javax.jdo.annotations.InheritanceStrategy)1 PersistenceCapable (javax.jdo.annotations.PersistenceCapable)1 Queries (javax.jdo.annotations.Queries)1 Unique (javax.jdo.annotations.Unique)1