Interface SpecialistsBroker

All Known Subinterfaces:
BaseContext, ContextMenuContext, ExternalPreviewContext, InlineEditContext, MediaManagementContext, PermissionServiceScriptContext, ReportContext<T>, ScheduleTaskDefinitionContext, ScheduleTaskExecutionContext, ScriptContext, ToolbarContext, UrlFactoryContext, WebeditStatusNoteContext, WorkflowAgent.WorkflowProcessContext

public interface SpecialistsBroker
Broker for requesting services or providers, specialized on (small) tasks or information.

Request a broker for a remote project registered under the given symbolic name.

SpecialistsBroker#requireSpecialist(BrokerAgent.TYPE).getBroker(remote)

Perform small tasks on the requested broker for a given agent type. SpecialistsBroker#requireSpecialist(StoreElementAgent.TYPE).loadStoreElement(uid,uidType,isRelease()) SpecialistsBroker#requireSpecialist(StoreAgent.TYPE).getStore(Store.Type.TEMPLATESTORE,false)

Request a broker for a service component registered under the given type.

SpecialistsBroker#requireSpecialist(ServicesBroker.TYPE).getService(MyModuleService.class)

Since:
4.2.200
  • Method Details

    • requestSpecialist

      @Nullable <S> S requestSpecialist(SpecialistType<S> type)
      Request a specialist.
      Type Parameters:
      S - The Java type of the instance being returned.
      Parameters:
      type - The type definition of the specialist to look up.
      Returns:
      A specialist or null.
      Since:
      4.2.200
    • requireSpecialist

      @NotNull default <S> S requireSpecialist(SpecialistType<S> type) throws IllegalStateException
      Require a specialist.
      Type Parameters:
      S - The Java type of the instance being returned.
      Parameters:
      type - The type definition of the specialist to look up.
      Returns:
      A specialist.
      Throws:
      IllegalStateException - If no specialist was found for the given type.
      Since:
      4.2.200