All Downloads are FREE. Search and download functionalities are using the official Maven repository.

edu.stanford.protege.webprotege.mansyntax.render.ClassFrameRenderer Maven / Gradle / Ivy

The newest version!
package edu.stanford.protege.webprotege.mansyntax.render;

import com.google.common.collect.Lists;
import org.semanticweb.owlapi.model.OWLClass;

import javax.annotation.Nonnull;
import javax.inject.Inject;
import java.util.List;

/**
 * @author Matthew Horridge, Stanford University, Bio-Medical Informatics Research Group, Date: 24/02/2014
 */
public class ClassFrameRenderer implements FrameRenderer {

    @Nonnull
    private final AnnotationsSectionRenderer annotationsSectionRenderer;

    @Nonnull
    private final ClassSubClassOfSectionRenderer subClassOfSectionRenderer;

    @Nonnull
    private final ClassEquivalentToSectionRenderer equivalentToSectionRenderer;

    @Nonnull
    private final ClassDisjointWithSectionRenderer disjointWithSectionRenderer;

    @Inject
    public ClassFrameRenderer(@Nonnull AnnotationsSectionRenderer annotationsSectionRenderer,
                              @Nonnull ClassSubClassOfSectionRenderer subClassOfSectionRenderer,
                              @Nonnull ClassEquivalentToSectionRenderer equivalentToSectionRenderer,
                              @Nonnull ClassDisjointWithSectionRenderer disjointWithSectionRenderer) {
        this.annotationsSectionRenderer = annotationsSectionRenderer;
        this.subClassOfSectionRenderer = subClassOfSectionRenderer;
        this.equivalentToSectionRenderer = equivalentToSectionRenderer;
        this.disjointWithSectionRenderer = disjointWithSectionRenderer;
    }

    @Override
    public List> getSectionRenderers() {
        List> renderers = Lists.newArrayList();
        renderers.add(annotationsSectionRenderer);
        renderers.add(subClassOfSectionRenderer);
        renderers.add(equivalentToSectionRenderer);
        renderers.add(disjointWithSectionRenderer);
        return renderers;

    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy