class AllSpiInitialization implements Initializable {

        @Override
        // find all initilizable spi and init it.
        public synchronized void init() {<FILL_FUNCTION_BODY>}
    }

            if (!inited) {
                try {
                    LoggerUtil.info("AllSpiInitialization init.");
                    ExtensionLoader<Initializable> extensionLoader = ExtensionLoader.getExtensionLoader(Initializable.class);
                    List<Initializable> allInit = extensionLoader.getExtensions(null);
                    if (allInit != null && !allInit.isEmpty()) {
                        for (Initializable initializable : allInit) {
                            try {
                                initializable.init();
                                LoggerUtil.info(initializable.getClass().getName() + " is init.");
                            } catch (Exception initErr) {
                                LoggerUtil.error(initializable.getClass().getName() + " init fail!", initErr);
                            }
                        }
                    }
                    inited = true;
                    LoggerUtil.info("AllSpiInitialization init finish.");
                } catch (Exception e) {
                    LoggerUtil.error("Initializable spi init fail!", e);;
                }
            }
        
<no_super_class>