test_class.file: restx-factory/src/test/java/restx/factory/FactoryTest.java
test_class.identifier: FactoryTest
test_case.body: @Test
      public void should_get_default_instance() throws Exception {
          Factory factory = Factory.getInstance();
  
          assertThat(factory).isNotNull().isSameAs(Factory.getInstance());
      }
test_case.class_method_signature: FactoryTest.should_get_default_instance()
test_case.full_signature: @Test public void should_get_default_instance()
test_case.identifier: should_get_default_instance
test_case.invocations: getInstance isSameAs isNotNull assertThat getInstance
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void should_get_default_instance()
focal_class.declarator: METRICS_REGISTRY = "MetricRegistry"
focal_class.modifier: public static final
focal_class.original_string: public static final String METRICS_REGISTRY = "MetricRegistry";
focal_class.type: String
focal_class.var_name: METRICS_REGISTRY
focal_class.declarator: HEALTH_CHECK_REGISTRY = "HealthChekcRegistry"
focal_class.modifier: public static final
focal_class.original_string: public static final String HEALTH_CHECK_REGISTRY = "HealthChekcRegistry";
focal_class.type: String
focal_class.var_name: HEALTH_CHECK_REGISTRY
focal_class.declarator: ENGINE_COMPARATOR = new Comparator<MachineEngine<?>>() {
          @Override
          public int compare(MachineEngine<?> o1, MachineEngine<?> o2) {
              return compareByPriorityAndName(o1.getPriority(), o1.getName(), o2.getPriority(), o2.getName());
          }
      }
focal_class.modifier: public static final
focal_class.original_string: public static final Comparator<MachineEngine<?>> ENGINE_COMPARATOR = new Comparator<MachineEngine<?>>() {
          @Override
          public int compare(MachineEngine<?> o1, MachineEngine<?> o2) {
              return compareByPriorityAndName(o1.getPriority(), o1.getName(), o2.getPriority(), o2.getName());
          }
      };
focal_class.type: Comparator<MachineEngine<?>>
focal_class.var_name: ENGINE_COMPARATOR
focal_class.declarator: NAMED_COMPONENT_COMPARATOR = new Comparator<NamedComponent<?>>() {
          @Override
          public int compare(NamedComponent<?> o1, NamedComponent<?> o2) {
              return compareByPriorityAndName(o1.getPriority(), o1.getName(), o2.getPriority(), o2.getName());
          }
      }
focal_class.modifier: public static final
focal_class.original_string: public static final Comparator<NamedComponent<?>> NAMED_COMPONENT_COMPARATOR = new Comparator<NamedComponent<?>>() {
          @Override
          public int compare(NamedComponent<?> o1, NamedComponent<?> o2) {
              return compareByPriorityAndName(o1.getPriority(), o1.getName(), o2.getPriority(), o2.getName());
          }
      };
focal_class.type: Comparator<NamedComponent<?>>
focal_class.var_name: NAMED_COMPONENT_COMPARATOR
focal_class.declarator: SERVICE_LOADER = "ServiceLoader"
focal_class.modifier: private static final
focal_class.original_string: private static final String SERVICE_LOADER = "ServiceLoader";
focal_class.type: String
focal_class.var_name: SERVICE_LOADER
focal_class.declarator: logger = LoggerFactory.getLogger(Factory.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger logger = LoggerFactory.getLogger(Factory.class);
focal_class.type: Logger
focal_class.var_name: logger
focal_class.declarator: FACTORY_NAME = Name.of(Factory.class, "FACTORY")
focal_class.modifier: private static final
focal_class.original_string: private static final Name<Factory> FACTORY_NAME = Name.of(Factory.class, "FACTORY");
focal_class.type: Name<Factory>
focal_class.var_name: FACTORY_NAME
focal_class.declarator: METRICS_NAME = Name.of(MetricRegistry.class, METRICS_REGISTRY)
focal_class.modifier: private static final
focal_class.original_string: private static final Name<MetricRegistry> METRICS_NAME = Name.of(MetricRegistry.class, METRICS_REGISTRY);
focal_class.type: Name<MetricRegistry>
focal_class.var_name: METRICS_NAME
focal_class.declarator: customizerComparator = new Comparator<ComponentCustomizer>() {
          @Override
          public int compare(ComponentCustomizer o1, ComponentCustomizer o2) {
              return o1.priority() - o2.priority();
          }
      }
focal_class.modifier: private static final
focal_class.original_string: private static final Comparator<ComponentCustomizer> customizerComparator = new Comparator<ComponentCustomizer>() {
          @Override
          public int compare(ComponentCustomizer o1, ComponentCustomizer o2) {
              return o1.priority() - o2.priority();
          }
      };
focal_class.type: Comparator<ComponentCustomizer>
focal_class.var_name: customizerComparator
focal_class.declarator: ID = new AtomicLong()
focal_class.modifier: private static final
focal_class.original_string: private static final AtomicLong ID = new AtomicLong();
focal_class.type: AtomicLong
focal_class.var_name: ID
focal_class.declarator: factories = Maps.newConcurrentMap()
focal_class.modifier: private static final
focal_class.original_string: private static final ConcurrentMap<String, Factory> factories = Maps.newConcurrentMap();
focal_class.type: ConcurrentMap<String, Factory>
focal_class.var_name: factories
focal_class.declarator: usedServiceLoader
focal_class.modifier: private final
focal_class.original_string: private final boolean usedServiceLoader;
focal_class.type: boolean
focal_class.var_name: usedServiceLoader
focal_class.declarator: machines
focal_class.modifier: private final
focal_class.original_string: private final ImmutableList<FactoryMachine> machines;
focal_class.type: ImmutableList<FactoryMachine>
focal_class.var_name: machines
focal_class.declarator: machinesByBuilder
focal_class.modifier: private final
focal_class.original_string: private final ImmutableMultimap<String, FactoryMachine> machinesByBuilder;
focal_class.type: ImmutableMultimap<String, FactoryMachine>
focal_class.var_name: machinesByBuilder
focal_class.declarator: warehouse
focal_class.modifier: private final
focal_class.original_string: private final Warehouse warehouse;
focal_class.type: Warehouse
focal_class.var_name: warehouse
focal_class.declarator: customizerEngines
focal_class.modifier: private final
focal_class.original_string: private final ImmutableList<ComponentCustomizerEngine> customizerEngines;
focal_class.type: ImmutableList<ComponentCustomizerEngine>
focal_class.var_name: customizerEngines
focal_class.declarator: id
focal_class.modifier: private final
focal_class.original_string: private final String id;
focal_class.type: String
focal_class.var_name: id
focal_class.declarator: dumper = new Object() { public String toString() { return Factory.this.dump(); } }
focal_class.modifier: private final
focal_class.original_string: private final Object dumper = new Object() { public String toString() { return Factory.this.dump(); } };
focal_class.type: Object
focal_class.var_name: dumper
focal_class.declarator: deactivatedComponents = new CopyOnWriteArraySet<>()
focal_class.modifier: private final
focal_class.original_string: private final Set<Name> deactivatedComponents = new CopyOnWriteArraySet<>();
focal_class.type: Set<Name>
focal_class.var_name: deactivatedComponents
focal_class.declarator: activatedComponents = new CopyOnWriteArraySet<>()
focal_class.modifier: private final
focal_class.original_string: private final Set<Name> activatedComponents = new CopyOnWriteArraySet<>();
focal_class.type: Set<Name>
focal_class.var_name: activatedComponents
focal_class.declarator: metrics
focal_class.modifier: private
focal_class.original_string: private MetricRegistry metrics;
focal_class.type: MetricRegistry
focal_class.var_name: metrics
focal_class.file: restx-factory/src/main/java/restx/factory/Factory.java
focal_class.identifier: Factory
focal_class.interfaces: implements AutoCloseable
focal_class.class_method_signature: Factory.compareByPriorityAndName(int p1, Name<?> n1, int p2, Name<?> n2)
focal_class.full_signature: private static int compareByPriorityAndName(int p1, Name<?> n1, int p2, Name<?> n2)
focal_class.identifier: compareByPriorityAndName
focal_class.modifiers: private static
focal_class.parameters: (int p1, Name<?> n1, int p2, Name<?> n2)
focal_class.return: int
focal_class.signature: int compareByPriorityAndName(int p1, Name<?> n1, int p2, Name<?> n2)
focal_class.class_method_signature: Factory.getFactory(String key)
focal_class.full_signature: public static Optional<Factory> getFactory(String key)
focal_class.identifier: getFactory
focal_class.modifiers: public static
focal_class.parameters: (String key)
focal_class.return: Optional<Factory>
focal_class.signature: Optional<Factory> getFactory(String key)
focal_class.class_method_signature: Factory.register(String key, Factory factory)
focal_class.full_signature: public static Factory register(String key, Factory factory)
focal_class.identifier: register
focal_class.modifiers: public static
focal_class.parameters: (String key, Factory factory)
focal_class.return: Factory
focal_class.signature: Factory register(String key, Factory factory)
focal_class.class_method_signature: Factory.unregister(String key, Factory factory)
focal_class.full_signature: public static boolean unregister(String key, Factory factory)
focal_class.identifier: unregister
focal_class.modifiers: public static
focal_class.parameters: (String key, Factory factory)
focal_class.return: boolean
focal_class.signature: boolean unregister(String key, Factory factory)
focal_class.class_method_signature: Factory.newInstance()
focal_class.full_signature: public static Factory newInstance()
focal_class.identifier: newInstance
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: Factory
focal_class.signature: Factory newInstance()
focal_class.class_method_signature: Factory.getInstance()
focal_class.full_signature: public static Factory getInstance()
focal_class.identifier: getInstance
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: Factory
focal_class.signature: Factory getInstance()
focal_class.class_method_signature: Factory.builder()
focal_class.full_signature: public static Builder builder()
focal_class.identifier: builder
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: Builder
focal_class.signature: Builder builder()
focal_class.class_method_signature: Factory.activationKey(Class<T> aClass, String name)
focal_class.full_signature: public static String activationKey(Class<T> aClass, String name)
focal_class.identifier: activationKey
focal_class.modifiers: public static
focal_class.parameters: (Class<T> aClass, String name)
focal_class.return: String
focal_class.signature: String activationKey(Class<T> aClass, String name)
focal_class.class_method_signature: Factory.Factory(boolean usedServiceLoader, Multimap<String, FactoryMachine> machines,
                      ImmutableList<ComponentCustomizerEngine> customizerEngines, Warehouse warehouse)
focal_class.full_signature: private  Factory(boolean usedServiceLoader, Multimap<String, FactoryMachine> machines,
                      ImmutableList<ComponentCustomizerEngine> customizerEngines, Warehouse warehouse)
focal_class.identifier: Factory
focal_class.modifiers: private
focal_class.parameters: (boolean usedServiceLoader, Multimap<String, FactoryMachine> machines,
                      ImmutableList<ComponentCustomizerEngine> customizerEngines, Warehouse warehouse)
focal_class.signature:  Factory(boolean usedServiceLoader, Multimap<String, FactoryMachine> machines,
                      ImmutableList<ComponentCustomizerEngine> customizerEngines, Warehouse warehouse)
focal_class.class_method_signature: Factory.concat(FactoryMachine machine)
focal_class.full_signature: public Factory concat(FactoryMachine machine)
focal_class.identifier: concat
focal_class.modifiers: public
focal_class.parameters: (FactoryMachine machine)
focal_class.return: Factory
focal_class.signature: Factory concat(FactoryMachine machine)
focal_class.class_method_signature: Factory.getId()
focal_class.full_signature: public String getId()
focal_class.identifier: getId
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getId()
focal_class.class_method_signature: Factory.getWarehouse()
focal_class.full_signature: public Warehouse getWarehouse()
focal_class.identifier: getWarehouse
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Warehouse
focal_class.signature: Warehouse getWarehouse()
focal_class.class_method_signature: Factory.getNbMachines()
focal_class.full_signature: public int getNbMachines()
focal_class.identifier: getNbMachines
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: int
focal_class.signature: int getNbMachines()
focal_class.class_method_signature: Factory.queryByName(Name<T> name)
focal_class.full_signature: public Query<T> queryByName(Name<T> name)
focal_class.identifier: queryByName
focal_class.modifiers: public
focal_class.parameters: (Name<T> name)
focal_class.return: Query<T>
focal_class.signature: Query<T> queryByName(Name<T> name)
focal_class.class_method_signature: Factory.queryByClass(Class<T> componentClass)
focal_class.full_signature: public Query<T> queryByClass(Class<T> componentClass)
focal_class.identifier: queryByClass
focal_class.modifiers: public
focal_class.parameters: (Class<T> componentClass)
focal_class.return: Query<T>
focal_class.signature: Query<T> queryByClass(Class<T> componentClass)
focal_class.class_method_signature: Factory.getComponent(Class<T> componentClass)
focal_class.full_signature: public T getComponent(Class<T> componentClass)
focal_class.identifier: getComponent
focal_class.modifiers: public
focal_class.parameters: (Class<T> componentClass)
focal_class.return: T
focal_class.signature: T getComponent(Class<T> componentClass)
focal_class.class_method_signature: Factory.getComponent(Name<T> componentName)
focal_class.full_signature: public T getComponent(Name<T> componentName)
focal_class.identifier: getComponent
focal_class.modifiers: public
focal_class.parameters: (Name<T> componentName)
focal_class.return: T
focal_class.signature: T getComponent(Name<T> componentName)
focal_class.class_method_signature: Factory.getComponents(Class<T> componentClass)
focal_class.full_signature: public Set<T> getComponents(Class<T> componentClass)
focal_class.identifier: getComponents
focal_class.modifiers: public
focal_class.parameters: (Class<T> componentClass)
focal_class.return: Set<T>
focal_class.signature: Set<T> getComponents(Class<T> componentClass)
focal_class.class_method_signature: Factory.and()
focal_class.full_signature: public Factory and()
focal_class.identifier: and
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Factory
focal_class.signature: Factory and()
focal_class.class_method_signature: Factory.start()
focal_class.full_signature: public Factory start()
focal_class.identifier: start
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Factory
focal_class.signature: Factory start()
focal_class.class_method_signature: Factory.prepare()
focal_class.full_signature: public Factory prepare()
focal_class.identifier: prepare
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Factory
focal_class.signature: Factory prepare()
focal_class.class_method_signature: Factory.close()
focal_class.full_signature: public void close()
focal_class.identifier: close
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void close()
focal_class.class_method_signature: Factory.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.class_method_signature: Factory.dumper()
focal_class.full_signature: public Object dumper()
focal_class.identifier: dumper
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Object
focal_class.signature: Object dumper()
focal_class.class_method_signature: Factory.dump()
focal_class.full_signature: public String dump()
focal_class.identifier: dump
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String dump()
focal_class.class_method_signature: Factory.dumpDeactivatedComponents(StringBuilder sb)
focal_class.full_signature: private void dumpDeactivatedComponents(StringBuilder sb)
focal_class.identifier: dumpDeactivatedComponents
focal_class.modifiers: private
focal_class.parameters: (StringBuilder sb)
focal_class.return: void
focal_class.signature: void dumpDeactivatedComponents(StringBuilder sb)
focal_class.class_method_signature: Factory.dumpBuidableComponents(StringBuilder sb)
focal_class.full_signature: private void dumpBuidableComponents(StringBuilder sb)
focal_class.identifier: dumpBuidableComponents
focal_class.modifiers: private
focal_class.parameters: (StringBuilder sb)
focal_class.return: void
focal_class.signature: void dumpBuidableComponents(StringBuilder sb)
focal_class.class_method_signature: Factory.findUndeclaredMachines()
focal_class.full_signature: private Set<String> findUndeclaredMachines()
focal_class.identifier: findUndeclaredMachines
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: Set<String>
focal_class.signature: Set<String> findUndeclaredMachines()
focal_class.class_method_signature: Factory.findAllMachinesListing(Name<?> name)
focal_class.full_signature: private List<FactoryMachine> findAllMachinesListing(Name<?> name)
focal_class.identifier: findAllMachinesListing
focal_class.modifiers: private
focal_class.parameters: (Name<?> name)
focal_class.return: List<FactoryMachine>
focal_class.signature: List<FactoryMachine> findAllMachinesListing(Name<?> name)
focal_class.class_method_signature: Factory.findAllMachinesFor(Name<?> name)
focal_class.full_signature: private Iterable<FactoryMachine> findAllMachinesFor(Name<?> name)
focal_class.identifier: findAllMachinesFor
focal_class.modifiers: private
focal_class.parameters: (Name<?> name)
focal_class.return: Iterable<FactoryMachine>
focal_class.signature: Iterable<FactoryMachine> findAllMachinesFor(Name<?> name)
focal_class.class_method_signature: Factory.findAllEnginesFor(final Name<T> name)
focal_class.full_signature: private Iterable<MachineEngine<T>> findAllEnginesFor(final Name<T> name)
focal_class.identifier: findAllEnginesFor
focal_class.modifiers: private
focal_class.parameters: (final Name<T> name)
focal_class.return: Iterable<MachineEngine<T>>
focal_class.signature: Iterable<MachineEngine<T>> findAllEnginesFor(final Name<T> name)
focal_class.class_method_signature: Factory.findMachineEngineFor(Name<T> name)
focal_class.full_signature: private Optional<MachineEngine<T>> findMachineEngineFor(Name<T> name)
focal_class.identifier: findMachineEngineFor
focal_class.modifiers: private
focal_class.parameters: (Name<T> name)
focal_class.return: Optional<MachineEngine<T>>
focal_class.signature: Optional<MachineEngine<T>> findMachineEngineFor(Name<T> name)
focal_class.class_method_signature: Factory.getMachineEngineFor(Name<T> name)
focal_class.full_signature: private MachineEngine<T> getMachineEngineFor(Name<T> name)
focal_class.identifier: getMachineEngineFor
focal_class.modifiers: private
focal_class.parameters: (Name<T> name)
focal_class.return: MachineEngine<T>
focal_class.signature: MachineEngine<T> getMachineEngineFor(Name<T> name)
focal_class.class_method_signature: Factory.collectAllBuildableNames(Class<T> componentClass)
focal_class.full_signature: private Set<Name<T>> collectAllBuildableNames(Class<T> componentClass)
focal_class.identifier: collectAllBuildableNames
focal_class.modifiers: private
focal_class.parameters: (Class<T> componentClass)
focal_class.return: Set<Name<T>>
focal_class.signature: Set<Name<T>> collectAllBuildableNames(Class<T> componentClass)
focal_class.class_method_signature: Factory.buildAndStore(Query<T> query, MachineEngine<T> engine)
focal_class.full_signature: private Optional<NamedComponent<T>> buildAndStore(Query<T> query, MachineEngine<T> engine)
focal_class.identifier: buildAndStore
focal_class.modifiers: private
focal_class.parameters: (Query<T> query, MachineEngine<T> engine)
focal_class.return: Optional<NamedComponent<T>>
focal_class.signature: Optional<NamedComponent<T>> buildAndStore(Query<T> query, MachineEngine<T> engine)
focal_class.class_method_signature: Factory.buildBuildingBoxesClosure(BuildingBox<?> buildingBox)
focal_class.full_signature: private Deque<BuildingBox<?>> buildBuildingBoxesClosure(BuildingBox<?> buildingBox)
focal_class.identifier: buildBuildingBoxesClosure
focal_class.modifiers: private
focal_class.parameters: (BuildingBox<?> buildingBox)
focal_class.return: Deque<BuildingBox<?>>
focal_class.signature: Deque<BuildingBox<?>> buildBuildingBoxesClosure(BuildingBox<?> buildingBox)
focal_class.class_method_signature: Factory.buildBuildingBoxClosureForQuery(
              Map<Name<?>, BuildingBox<?>> dependenciesByName,
              Queue<BuildingBox<?>> dependenciesToSatisfy, BuildingBox<?> buildingBox, Query<D> query)
focal_class.full_signature: private void buildBuildingBoxClosureForQuery(
              Map<Name<?>, BuildingBox<?>> dependenciesByName,
              Queue<BuildingBox<?>> dependenciesToSatisfy, BuildingBox<?> buildingBox, Query<D> query)
focal_class.identifier: buildBuildingBoxClosureForQuery
focal_class.modifiers: private
focal_class.parameters: (
              Map<Name<?>, BuildingBox<?>> dependenciesByName,
              Queue<BuildingBox<?>> dependenciesToSatisfy, BuildingBox<?> buildingBox, Query<D> query)
focal_class.return: void
focal_class.signature: void buildBuildingBoxClosureForQuery(
              Map<Name<?>, BuildingBox<?>> dependenciesByName,
              Queue<BuildingBox<?>> dependenciesToSatisfy, BuildingBox<?> buildingBox, Query<D> query)
focal_class.class_method_signature: Factory.getDependencyBuildingBox(Map<Name<?>, BuildingBox<?>> dependenciesByName, Name<D> n)
focal_class.full_signature: @SuppressWarnings("unchecked") private BuildingBox<D> getDependencyBuildingBox(Map<Name<?>, BuildingBox<?>> dependenciesByName, Name<D> n)
focal_class.identifier: getDependencyBuildingBox
focal_class.modifiers: @SuppressWarnings("unchecked") private
focal_class.parameters: (Map<Name<?>, BuildingBox<?>> dependenciesByName, Name<D> n)
focal_class.return: BuildingBox<D>
focal_class.signature: BuildingBox<D> getDependencyBuildingBox(Map<Name<?>, BuildingBox<?>> dependenciesByName, Name<D> n)
focal_class.class_method_signature: Factory.findSimilarNamesByNamedType(Class componentClass)
focal_class.full_signature: private Set<Name> findSimilarNamesByNamedType(Class componentClass)
focal_class.identifier: findSimilarNamesByNamedType
focal_class.modifiers: private
focal_class.parameters: (Class componentClass)
focal_class.return: Set<Name>
focal_class.signature: Set<Name> findSimilarNamesByNamedType(Class componentClass)
focal_class.class_method_signature: Factory.satisfyBoms(Deque<BuildingBox<?>> dependencies)
focal_class.full_signature: private void satisfyBoms(Deque<BuildingBox<?>> dependencies)
focal_class.identifier: satisfyBoms
focal_class.modifiers: private
focal_class.parameters: (Deque<BuildingBox<?>> dependencies)
focal_class.return: void
focal_class.signature: void satisfyBoms(Deque<BuildingBox<?>> dependencies)
focal_class.class_method_signature: Factory.buildAndStore(BuildingBox<T> buildingBox)
focal_class.full_signature: private Optional<NamedComponent<T>> buildAndStore(BuildingBox<T> buildingBox)
focal_class.identifier: buildAndStore
focal_class.modifiers: private
focal_class.parameters: (BuildingBox<T> buildingBox)
focal_class.return: Optional<NamedComponent<T>>
focal_class.signature: Optional<NamedComponent<T>> buildAndStore(BuildingBox<T> buildingBox)
focal_class.class_method_signature: Factory.buildCircularDependencyLog(StringBuilder circularDependencyLog, BuildingBox buildingBox, ImmutableSet<Name> alreadyDisplayedComponents)
focal_class.full_signature: private void buildCircularDependencyLog(StringBuilder circularDependencyLog, BuildingBox buildingBox, ImmutableSet<Name> alreadyDisplayedComponents)
focal_class.identifier: buildCircularDependencyLog
focal_class.modifiers: private
focal_class.parameters: (StringBuilder circularDependencyLog, BuildingBox buildingBox, ImmutableSet<Name> alreadyDisplayedComponents)
focal_class.return: void
focal_class.signature: void buildCircularDependencyLog(StringBuilder circularDependencyLog, BuildingBox buildingBox, ImmutableSet<Name> alreadyDisplayedComponents)
focal_class.class_method_signature: Factory.buildAndStore(Name<T> name, MachineEngine<T> engine, SatisfiedBOM satisfiedBOM)
focal_class.full_signature: private Optional<NamedComponent<T>> buildAndStore(Name<T> name, MachineEngine<T> engine, SatisfiedBOM satisfiedBOM)
focal_class.identifier: buildAndStore
focal_class.modifiers: private
focal_class.parameters: (Name<T> name, MachineEngine<T> engine, SatisfiedBOM satisfiedBOM)
focal_class.return: Optional<NamedComponent<T>>
focal_class.signature: Optional<NamedComponent<T>> buildAndStore(Name<T> name, MachineEngine<T> engine, SatisfiedBOM satisfiedBOM)
focal_class.class_method_signature: Factory.customizerEngines()
focal_class.full_signature: private Iterable<ComponentCustomizerEngine> customizerEngines()
focal_class.identifier: customizerEngines
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: Iterable<ComponentCustomizerEngine>
focal_class.signature: Iterable<ComponentCustomizerEngine> customizerEngines()
focal_class.class_method_signature: Factory.checkSatisfy(Name<T> name)
focal_class.full_signature: private void checkSatisfy(Name<T> name)
focal_class.identifier: checkSatisfy
focal_class.modifiers: private
focal_class.parameters: (Name<T> name)
focal_class.return: void
focal_class.signature: void checkSatisfy(Name<T> name)
focal_class.class_method_signature: Factory.getBillOfMaterialsFor(Name<T> name)
focal_class.full_signature: private BillOfMaterials getBillOfMaterialsFor(Name<T> name)
focal_class.identifier: getBillOfMaterialsFor
focal_class.modifiers: private
focal_class.parameters: (Name<T> name)
focal_class.return: BillOfMaterials
focal_class.signature: BillOfMaterials getBillOfMaterialsFor(Name<T> name)
focal_class.class_method_signature: Factory.nameBuildableComponents(FactoryMachine machine, Class<T> componentClass)
focal_class.full_signature: private Set<Name<T>> nameBuildableComponents(FactoryMachine machine, Class<T> componentClass)
focal_class.identifier: nameBuildableComponents
focal_class.modifiers: private
focal_class.parameters: (FactoryMachine machine, Class<T> componentClass)
focal_class.return: Set<Name<T>>
focal_class.signature: Set<Name<T>> nameBuildableComponents(FactoryMachine machine, Class<T> componentClass)
focal_class.class_method_signature: Factory.canBuild(FactoryMachine machine, Name<T> name)
focal_class.full_signature: private boolean canBuild(FactoryMachine machine, Name<T> name)
focal_class.identifier: canBuild
focal_class.modifiers: private
focal_class.parameters: (FactoryMachine machine, Name<T> name)
focal_class.return: boolean
focal_class.signature: boolean canBuild(FactoryMachine machine, Name<T> name)
focal_class.class_method_signature: Factory.checkActive(Name<T> name)
focal_class.full_signature: private boolean checkActive(Name<T> name)
focal_class.identifier: checkActive
focal_class.modifiers: private
focal_class.parameters: (Name<T> name)
focal_class.return: boolean
focal_class.signature: boolean checkActive(Name<T> name)
focal_class.class_method_signature: Factory.machineNotFoundMessage(Name<T> name)
focal_class.full_signature: private String machineNotFoundMessage(Name<T> name)
focal_class.identifier: machineNotFoundMessage
focal_class.modifiers: private
focal_class.parameters: (Name<T> name)
focal_class.return: String
focal_class.signature: String machineNotFoundMessage(Name<T> name)
focal_class.class_method_signature: Factory.machineNotFoundMessage(Object what, Set similarNames)
focal_class.full_signature: private String machineNotFoundMessage(Object what, Set similarNames)
focal_class.identifier: machineNotFoundMessage
focal_class.modifiers: private
focal_class.parameters: (Object what, Set similarNames)
focal_class.return: String
focal_class.signature: String machineNotFoundMessage(Object what, Set similarNames)
focal_class.class_method_signature: Factory.uncheckedAddIfPresent(Set components, Optional c)
focal_class.full_signature: @SuppressWarnings("unchecked") private void uncheckedAddIfPresent(Set components, Optional c)
focal_class.identifier: uncheckedAddIfPresent
focal_class.modifiers: @SuppressWarnings("unchecked") private
focal_class.parameters: (Set components, Optional c)
focal_class.return: void
focal_class.signature: void uncheckedAddIfPresent(Set components, Optional c)
focal_method.body: public static Factory getInstance() {
          Optional<Factory> factory = getFactory("__DEFAULT__");
          if (factory.isPresent()) {
              return factory.get();
          } else {
              return register("__DEFAULT__", Factory.builder().addFromServiceLoader().build());
          }
      }
focal_method.class_method_signature: Factory.getInstance()
focal_method.full_signature: public static Factory getInstance()
focal_method.identifier: getInstance
focal_method.invocations: getFactory isPresent get register build addFromServiceLoader builder
focal_method.modifiers: public static
focal_method.parameters: ()
focal_method.return: Factory
focal_method.signature: Factory getInstance()