The method to use when all the dependencies are resolved.
<p>
It means iPojo guarantees that both the manager and the HTTP
service are not null.
</p>

@throws Exception in case of critical error
772185
public void starting() throws Exception {
		this.logger.fine( "iPojo registers REST and icons servlets related to Roboconf's DM." );

		// Register the servlet
		Dictionary<String,String> initParams = new Hashtable<> ();
		initParams.put( "servlet-name", "Roboconf Web Extension (Kibana)" );

		this.servlet = new KibanaExtensionServlet( this.manager );
		this.servlet.setAgentDashBoardUrl( this.agentDashBoardUrl );
		this.servlet.setAppDashBoardUrl( this.appDashBoardUrl );
		this.httpService.registerServlet( CONTEXT, this.servlet, initParams, null );

		// Register a new preference
		this.manager.preferencesMngr().addToList( IPreferencesMngr.WEB_EXTENSIONS, CONTEXT );
	}
595493
@Override
    public void doExceptionCaughtListeners(final long sessionId, final Throwable cause) {
        runManagementTask(new Runnable() {
            @Override
            public void run() {
                try {
                    // The particular management listeners change on strategy, so get them here.
                    for (final GatewayManagementListener listener : getManagementListeners()) {
                        listener.doExceptionCaught(GatewayManagementBeanImpl.this, sessionId);
                    }

                    markChanged();  // mark ourselves as changed, possibly tell listeners
                } catch (Exception ex) {
                    logger.warn("Error during exceptionCaught gateway listener notifications:", ex);
                }
            }
        });
    }
1089480
public void start(BundleContext context) throws Exception
    {
        super.start(context);
        repositoryAdmin = this.getRepositoryAdmin(context, this);
        
        if (repositoryAdmin != null)
        {   // The repository is up, I can get to work (otherwise, I'll be waiting)
        	this.addBootstrapRepository(repositoryAdmin, context);
            this.registerClassFinder(context);
        }
    }
1193582
private void resolveDependencies() throws RuntimeWarning {
        // d684950
        if (EJSPlatformHelper.isZOSCRA()) {
            if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                Tr.debug(tc, "resolveDependencies: skipped in adjunct process");
            return;
        }

        // F743-20281 - If an exception happened during early dependency
        // resolution, then fail the application.
        if (ivSingletonDependencyResolutionException != null) {
            throw ivSingletonDependencyResolutionException;
        }

        // Beans currently on a dependency list. If A->B->C->A, then used={A}
        // then used={A,B} then used={A,B,C} then C->A is an error because A
        // is already in the set.
        Set<BeanMetaData> used = new HashSet<BeanMetaData>();

        // F7434950.CodRev - Create a copy of the key list since
        // resolveBeanDependencies will modify ivSingletonDependencies.
        for (BeanMetaData bmd : new ArrayList<BeanMetaData>(ivSingletonDependencies.keySet())) {
            used.add(bmd);
            resolveBeanDependencies(bmd, used);
            used.remove(bmd);
        }
    }
1369284
@Override
  public void onException(Throwable failureCause) {
    Preconditions.checkNotNull(failureCause, "failureCause");
    Status status = Status.UNAVAILABLE.withCause(failureCause);
    startGoAway(0, ErrorCode.INTERNAL_ERROR, status);
  }
138203
@Override
    public void execute() throws MojoExecutionException {
        try {
            // Work around for Application Insights Java SDK:
            // Sometimes, NoClassDefFoundError will be thrown even after Maven build is completed successfully.
            // An issue has been filed at https://github.com/Microsoft/ApplicationInsights-Java/issues/416
            // Before this issue is fixed, set default uncaught exception handler for all threads as work around.
            Thread.setDefaultUncaughtExceptionHandler(new DefaultUncaughtExceptionHandler());

            final Properties prop = new Properties();
            if (isFirstRun(prop)) {
                infoWithMultipleLines(PRIVACY_STATEMENT);
                updateConfigurationFile(prop);
            }

            if (isSkipMojo()) {
                info("Skip execution.");
                trackMojoSkip();
            } else {
                trackMojoStart();

                doExecute();

                trackMojoSuccess();
            }
        } catch (Exception e) {
            handleException(e);
        } finally {
            // When maven goal executes too quick, The HTTPClient of AI SDK may not fully initialized and will step
            // into endless loop when close, we need to call it in main thread.
            // Refer here for detail codes: https://github.com/Microsoft/ApplicationInsights-Java/blob/master/core/src
            // /main/java/com/microsoft/applicationinsights/internal/channel/common/ApacheSender43.java#L103
            try {
                // Sleep to wait ai sdk flush telemetries
                Thread.sleep(2 * 1000);
            } catch (InterruptedException e) {
                // swallow this exception
            }
            ApacheSenderFactory.INSTANCE.create().close();
        }
    }
1129885
public void stop() throws Exception {

		if( this.nazgulAgentFactory != null ) {
			for( ComponentInstance nazgul : this.nazgulAgentFactory.getInstances())
				deleteIPojoInstance( nazgul );
		}

		if( this.standardAgentFactory != null ) {
			for( ComponentInstance agent : this.standardAgentFactory.getInstances())
				deleteIPojoInstance( agent );
		}
	}
1244932
@Override
    protected void doExecute() throws Exception {
        final CommandHandler commandHandler = new CommandHandlerImpl(this.getLog());

        checkStageDirectoryExistence();

        checkRuntimeExistence(commandHandler);

        runFunctions(commandHandler);
    }
1343132
@Override
    protected void onPostExecute(Integer result) {
        if (result == VERSION_DOWNLOADABLE_FOUND) {
            mResultInterface.versionDownloadableFound(mVersionDownloadable);
        } else if (result == NETWORK_ERROR) {
            mResultInterface.networkError();
            Network.logConnectionError();
        } else if (result == MULTIPLE_APKS_PUBLISHED) {
            mResultInterface.multipleApksPublished();
            Log.e(Constants.LOG_TAG, "Multiple APKs published ");
        } else if (result == PACKAGE_NOT_PUBLISHED) {
            mResultInterface.appUnpublished();
            Log.e(Constants.LOG_TAG, "App unpublished");
        } else if (result == STORE_ERROR) {
            mResultInterface.storeError();
            Log.e(Constants.LOG_TAG, "Store page format error");
        }
    }
474803
@AfterThrowing(pointcut = "execution( * org.eclipse.hawkbit.repository.jpa.*Management.*(..))", throwing = "ex")
    // Exception for squid:S00112, squid:S1162
    // It is a AspectJ proxy which deals with exceptions.
    @SuppressWarnings({ "squid:S00112", "squid:S1162" })
    public void catchAndWrapJpaExceptionsService(final Exception ex) throws Throwable {

        // Workarround for EclipseLink merge where it does not throw
        // ConstraintViolationException directly in case of existing entity
        // update
        if (ex instanceof TransactionSystemException) {
            throw replaceWithCauseIfConstraintViolationException((TransactionSystemException) ex);
        }

        for (final Class<?> mappedEx : MAPPED_EXCEPTION_ORDER) {

            if (!mappedEx.isAssignableFrom(ex.getClass())) {
                continue;
            }

            if (EXCEPTION_MAPPING.containsKey(mappedEx.getName())) {
                throw (Exception) Class.forName(EXCEPTION_MAPPING.get(mappedEx.getName()))
                        .getConstructor(Throwable.class).newInstance(ex);
            }

            LOG.error("there is no mapping configured for exception class {}", mappedEx.getName());
            throw new GenericSpServerException(ex);
        }

        throw ex;
    }
1090948
@Override
	public void onUncaughtException(Throwable throwable) {
		for (ErrorHandler handler : this.errorHandlers) {
			if (handler.handle(throwable)) {
				return;
			}
		}
		this.defaultHandler.handle(throwable);
	}
1333317
@Override
    public final STRATEGYSTAGETYPE resolve(final String coordinate) throws IllegalArgumentException {
        final MavenDependency dep = this.resolveDependency(coordinate);
        this.addDependency(dep);
        return this.resolve();
    }
956311
@Override
    public void start() throws Exception {

        if (dependency == null) {
            throw new IllegalStateException("Dependency was not injected!");
        }

        vertx.eventBus().consumer(EB_ADDRESS, this);

        super.start();
    }
1158987
protected void enableRemoteExceptionHandler() {

        if (GWT.isScript()) {
            // In hosted mode, uncaught exceptions are easier to debug
            return;
        }

        GWT.setUncaughtExceptionHandler(new GWT.UncaughtExceptionHandler() {

            /**
             * @see com.google.gwt.core.client.GWT.UncaughtExceptionHandler#onUncaughtException(java.lang.Throwable)
             */
            public void onUncaughtException(Throwable t) {

                if (t instanceof UmbrellaException) {
                    t = ((UmbrellaException)t).getCauses().iterator().next();
                }
                String message = CmsClientStringUtil.getMessage(t);
                CmsNotification.get().send(CmsNotification.Type.WARNING, message);
                CmsLog.log(message + "\n" + CmsClientStringUtil.getStackTrace(t, "\n"));
            }
        });
    }
276565
@Override
    protected void init() throws Exception {
        BootstrapContextImpl bootstrapContext = bootstrapContextRef.getServiceWithException();

        if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
            Tr.debug(this, tc, "loading", mcfImplClassName);
        if (mcfImplClassName == null) // TODO: get the real config element name of the nested properties
            throw new IllegalArgumentException(Utils.getMessage("J2CA8504.incorrect.props.list", "properties", configElementName, id));
        mcf = (ManagedConnectionFactory) bootstrapContext.loadClass(mcfImplClassName).newInstance();
        bootstrapContext.configure(mcf, jndiName, properties, null, null, null);

        if (connectionManagerRef == null)
            conMgrSvc = ConnectionManagerService.createDefaultService(jndiName);
        else
            conMgrSvc = (ConnectionManagerService) priv.locateService(componentContext, CONNECTION_MANAGER);
        conMgrSvc.addObserver(this);
        isInitialized.set(true);

        conMgrSvc.addRaClassLoader(bootstrapContext.getRaClassLoader());
    }
1128599
protected final void load()throws Exception
	{
		synchronized (this) {
			Set<Class<?>> classes=classProvider.getLoadedClasses();
			initScriptClasses(classes);
			onScriptLoaded(classes);
		}
	}
110982
protected void activate() throws Exception {
        // If the ProbeProxy class is available, check it's version
        String runtimeVersion = getRuntimeClassVersion();
        if (runtimeVersion != null && !runtimeVersion.equals(getCurrentVersion())) {
            // TODO: Use a compatibility check instead
            throw new IllegalStateException("Incompatible proxy code (version " + runtimeVersion + ")");
        }

        // Find or create the proxy jar if the runtime code isn't loaded
        if (runtimeVersion == null) {
            JarFile proxyJar = getBootProxyJarIfCurrent();
            if (proxyJar == null) {
                proxyJar = createBootProxyJar();
            }
            instrumentation.appendToBootstrapClassLoaderSearch(proxyJar);
        }

        // Hook up the proxies
        activateProbeProxyTarget();
        activateClassAvailableProxyTarget();
    }