]>
git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.util/src/org/argeo/util/register/ComponentRegister.java
1 package org
.argeo
.util
.register
;
4 import java
.util
.SortedSet
;
5 import java
.util
.function
.Predicate
;
7 /** A register of components which can coordinate their activation. */
8 public interface ComponentRegister
{
9 long register(Component
<?
> component
);
11 <T
> SortedSet
<Component
<?
extends T
>> find(Class
<T
> clss
, Predicate
<Map
<String
, Object
>> filter
);
13 Component
<?
> get(Object instance
);
15 // default <T> PublishedType<T> getType(Class<T> clss) {
16 // SortedSet<Component<? extends T>> components = find(clss, null);
17 // if (components.size() == 0)
19 // return components.first().getType(clss);