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

io.annot8.common.implementations.registries.ContentBuilderFactoryRegistry Maven / Gradle / Ivy

There is a newer version: 0.2.0
Show newest version
/* Annot8 (annot8.io) - Licensed under Apache-2.0. */
package io.annot8.common.implementations.registries;

import java.util.Optional;

import io.annot8.common.implementations.factories.ContentBuilderFactory;
import io.annot8.core.data.Content;

/** A registry of content builder factories. */
public interface ContentBuilderFactoryRegistry {

  /**
   * Get the (best) content builder factory for the content class requested, if available.
   *
   * @param contentClass the content type required
   * @return builder (if available for that content class)
   */
  > Optional> get(Class contentClass);

  , I extends C> void register(
      Class contentClass, ContentBuilderFactory contentBuilderFactory);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy