public void beforeAll()

in winegrower-extension/winegrower-testing/winegrower-testing-junit5/src/main/java/org/apache/winegrower/extension/testing/junit5/internal/MonoWinegrowerExtension.java [34:62]


    public void beforeAll(final ExtensionContext extensionContext) throws Exception {
        Instance instance = INSTANCE.get();
        if (instance == null) {
            synchronized (INSTANCE) {
                instance = INSTANCE.get();
                if (instance == null) {
                    final Iterator<Ripener.Configuration> configurations = ServiceLoader
                            .load(Ripener.Configuration.class).iterator();
                    final Ripener.Configuration configuration = configurations.hasNext() ? configurations.next()
                            : new Ripener.Configuration();
                    instance = new Instance(new Ripener.Impl(configuration));
                    Runtime.getRuntime().addShutdownHook(new Thread() {

                        {
                            setName(getClass().getName() + "-shutdown-hook");
                        }

                        @Override
                        public void run() {
                            ofNullable(INSTANCE.get()).ifPresent(Instance::close);
                        }
                    });
                    instance.ripener.start();
                    INSTANCE.set(instance);
                }
            }
        }
        store(extensionContext).put(Ripener.class, instance.ripener);
    }