jodd-joy/src/main/java/jodd/joy/JoyMadvoc.java
@Override
	public void start() {
		initLogger();

		log.info("MADVOC start  ----------");

		webApp = webAppSupplier == null ? new PetiteWebApp(joyPetiteSupplier.get().getPetiteContainer()) : webAppSupplier.get();

		webApp.withRegisteredComponent(ActionConfigManager.class, acm -> {
			acm.bindAnnotationConfig(Action.class, JoyActionConfig.class);
			acm.bindAnnotationConfig(RestAction.class, JoyRestActionConfig.class);
		});

		if (servletContext != null) {
			webApp.bindServletContext(servletContext);
		}

		final Props allProps = joyPropsSupplier.get().getProps();

		webApp.withParams(allProps.innerMap(beanNamePrefix()));

		webApp.registerComponent(new ProxettaSupplier(joyProxettaSupplier.get().getProxetta()));
		webApp.registerComponent(ProxettaAwareActionsManager.class);

		// Automagic Madvoc configurator will scan and register ALL!
		// This way we reduce the startup time and have only one scanning.
		// Scanning happens in the INIT phase.
		final AutomagicMadvocConfigurator automagicMadvocConfigurator =
			new AutomagicMadvocConfigurator(joyScannerSupplier.get().getClassScanner()) {
				@Override
				protected String createInfoMessage() {
					return "Scanning completed in " + elapsed + "ms.";
				}
			};

		webApp.registerComponent(automagicMadvocConfigurator);

		webAppConsumers.accept(webApp);

		webApp.start();

		log.info("MADVOC OK!");
	}
@Override
	public void start() {
		initLogger();

		log.info("MADVOC start  ----------");

		webApp = webAppSupplier == null ? new PetiteWebApp(joyPetiteSupplier.get().getPetiteContainer()) : webAppSupplier.get();

		webApp.withRegisteredComponent(ActionConfigManager.class, acm -> {
			acm.bindAnnotationConfig(Action.class, JoyActionConfig.class);
			acm.bindAnnotationConfig(RestAction.class, JoyRestActionConfig.class);
		});

		if (servletContext != null) {
			webApp.bindServletContext(servletContext);
		}

		final Props allProps = joyPropsSupplier.get().getProps();

		webApp.withParams(allProps.innerMap(beanNamePrefix()));

		webApp.registerComponent(new ProxettaSupplier(joyProxettaSupplier.get().getProxetta()));
		webApp.registerComponent(ProxettaAwareActionsManager.class);

		// Automagic Madvoc configurator will scan and register ALL!
		// This way we reduce the startup time and have only one scanning.
		// Scanning happens in the INIT phase.
		final AutomagicMadvocConfigurator automagicMadvocConfigurator =
			new AutomagicMadvocConfigurator(joyScannerSupplier.get().getClassScanner()) {
				@Override
				protected String createInfoMessage() {
					return "Scanning completed in " + elapsed + "ms.";
				}
			};

		webApp.registerComponent(automagicMadvocConfigurator);

		webAppConsumers.accept(webApp);

		webApp.start();

		log.info("MADVOC OK!");
	}
@ Override public void start ( ) { initLogger ( ) ; log . info ( "MADVOC start  ----------" ) ; webApp = webAppSupplier == null ? new PetiteWebApp ( joyPetiteSupplier . get ( ) . getPetiteContainer ( ) ) : webAppSupplier . get ( ) ; webApp . withRegisteredComponent ( ActionConfigManager . class , acm -> { acm . bindAnnotationConfig ( Action . class , JoyActionConfig . class ) ; acm . bindAnnotationConfig ( RestAction . class , JoyRestActionConfig . class ) ; } ) ; if ( servletContext != null ) { webApp . bindServletContext ( servletContext ) ; } final Props allProps = joyPropsSupplier . get ( ) . getProps ( ) ; webApp . withParams ( allProps . innerMap ( beanNamePrefix ( ) ) ) ; webApp . registerComponent ( new ProxettaSupplier ( joyProxettaSupplier . get ( ) . getProxetta ( ) ) ) ; webApp . registerComponent ( ProxettaAwareActionsManager . class ) ; // Automagic Madvoc configurator will scan and register ALL! // This way we reduce the startup time and have only one scanning. // Scanning happens in the INIT phase. final AutomagicMadvocConfigurator automagicMadvocConfigurator = new AutomagicMadvocConfigurator ( joyScannerSupplier . get ( ) . getClassScanner ( ) ) { @ Override protected String createInfoMessage ( ) { return "Scanning completed in " + elapsed + "ms." ; } } ; webApp . registerComponent ( automagicMadvocConfigurator ) ; webAppConsumers . accept ( webApp ) ; webApp . start ( ) ; log . info ( "MADVOC OK!" ) ; }
---------------------------------------------------------------- lifecycle
---------------------------------------------------------------- lifecycle