1818import cz .o2 .proxima .core .annotations .Evolving ;
1919import cz .o2 .proxima .core .functional .Consumer ;
2020import cz .o2 .proxima .core .scheme .ValueSerializerFactory ;
21+ import cz .o2 .proxima .core .util .internal .ClassLoaders .ChildLayerFirstClassLoader ;
2122import cz .o2 .proxima .internal .com .google .common .annotations .VisibleForTesting ;
2223import cz .o2 .proxima .internal .com .google .common .collect .Streams ;
2324import cz .o2 .proxima .typesafe .config .Config ;
3233import java .util .Set ;
3334import java .util .concurrent .ConcurrentHashMap ;
3435import java .util .stream .Stream ;
36+ import lombok .AccessLevel ;
3537import lombok .Getter ;
38+ import lombok .Setter ;
3639import lombok .extern .slf4j .Slf4j ;
3740
3841/** Repository of all entities configured in the system. */
@@ -42,6 +45,9 @@ public abstract class Repository implements Serializable {
4245
4346 private static final long serialVersionUID = 1L ;
4447
48+ @ Setter (AccessLevel .PACKAGE )
49+ private static ChildLayerFirstClassLoader jpmsClassLoader = null ;
50+
4551 /** Various validation flags. */
4652 public enum Validate {
4753 /** Do not perform any validations. */
@@ -94,6 +100,10 @@ public static Repository ofTest(Config config, Validate... validate) {
94100 return ConfigRepository .ofTest (config , validate );
95101 }
96102
103+ public static ClassLoader getJpmsClassloader () {
104+ return jpmsClassLoader ;
105+ }
106+
97107 @ SuppressWarnings ({"unchecked" , "rawtypes" })
98108 private static Iterable <DataOperatorFactory <?>> readDataOperatorFactories () {
99109 return (Iterable ) ServiceLoader .load (DataOperatorFactory .class );
0 commit comments