Search in sources :

Example 1 with INFO

use of java.lang.System.Logger.Level.INFO in project piranha by piranhacloud.

the class MicroInnerDeployer method start.

/**
 * Start the application.
 *
 * @param applicationArchive the application archive.
 * @param classLoader the classloader.
 * @param handlers the handlers.
 * @param config the configuration.
 * @return the map.
 */
public Map<String, Object> start(Archive<?> applicationArchive, ClassLoader classLoader, Map<String, Function<URL, URLConnection>> handlers, Map<String, Object> config) {
    try {
        WebApplication webApplication = getWebApplication(applicationArchive, classLoader);
        LOGGER.log(INFO, "Starting web application " + applicationArchive.getName() + " on Piranha Micro " + webApplication.getAttribute(MICRO_PIRANHA));
        // The global archive stream handler is set to resolve "shrinkwrap://" URLs (created from strings).
        // Such URLs come into being primarily when code takes resolves a class or resource from the class loader by URL
        // and then takes the string form of the URL representing the class or resource.
        GlobalArchiveStreamHandler streamHandler = new GlobalArchiveStreamHandler(webApplication);
        // Life map to the StaticURLStreamHandlerFactory used by the root class loader
        handlers.put("shrinkwrap", streamHandler::connect);
        // Source of annotations
        Index index = getIndex();
        // Target of annotations
        AnnotationManager annotationManager = new InternalAnnotationScanAnnotationManager();
        webApplication.getManager().setAnnotationManager(annotationManager);
        // Copy annotations from our "annotations" collection from source index to target manager
        forEachWebAnnotation(webAnnotation -> addAnnotationToIndex(index, webAnnotation, annotationManager));
        // Collect sub-classes/interfaces of our "instances" collection from source index to target manager
        forEachInstance(instanceClass -> addInstanceToIndex(index, instanceClass, annotationManager));
        // Collect any sub-classes/interfaces from any HandlesTypes annotation
        getAnnotations(index, HandlesTypes.class).map(this::getTarget).forEach(annotationTarget -> getAnnotationInstances(annotationTarget, HandlesTypes.class).map(HandlesTypes.class::cast).forEach(handlesTypesInstance -> stream(handlesTypesInstance.value()).forEach(e -> {
            if (e.isAnnotation()) {
                addAnnotationToIndex(index, e, annotationManager);
            } else {
                addInstanceToIndex(index, e, annotationManager);
            }
        })));
        // Setup the default identity store, which is used as the default "username and roles database" for
        // (Servlet) security.
        initIdentityStore(webApplication);
        setApplicationContextPath(webApplication, config, applicationArchive);
        DefaultWebApplicationExtensionContext extensionContext = new DefaultWebApplicationExtensionContext();
        for (WebApplicationExtension extension : ServiceLoader.load(WebApplicationExtension.class)) {
            extensionContext.add(extension);
        }
        extensionContext.configure(webApplication);
        webApplication.initialize();
        webApplication.start();
        if ((boolean) config.get("micro.http.start")) {
            HttpWebApplicationServer webApplicationServer = new HttpWebApplicationServer();
            webApplicationServer.addWebApplication(webApplication);
            ServiceLoader<HttpServer> httpServers = ServiceLoader.load(HttpServer.class);
            httpServer = httpServers.findFirst().orElseThrow();
            httpServer.setServerPort((Integer) config.get("micro.port"));
            httpServer.setSSL(Boolean.getBoolean("piranha.http.ssl"));
            httpServer.setHttpServerProcessor(webApplicationServer);
            httpServer.start();
        }
        return Map.of("deployedServlets", webApplication.getServletRegistrations().keySet(), "deployedApplication", new MicroInnerApplication(webApplication), "deployedContextRoot", webApplication.getContextPath());
    } catch (IOException e) {
        throw new IllegalStateException(e);
    } catch (Exception e) {
        throw e;
    }
}
Also used : AnnotationManager(cloud.piranha.core.api.AnnotationManager) InternalAnnotationScanAnnotationManager(cloud.piranha.extension.annotationscan.internal.InternalAnnotationScanAnnotationManager) DefaultWebApplicationExtensionContext(cloud.piranha.core.impl.DefaultWebApplicationExtensionContext) XPathExpressionException(javax.xml.xpath.XPathExpressionException) URL(java.net.URL) RunAs(jakarta.annotation.security.RunAs) PostConstruct(jakarta.annotation.PostConstruct) ClassInfo(org.jboss.jandex.ClassInfo) Node(org.jboss.shrinkwrap.api.Node) HttpWebApplicationServer(cloud.piranha.http.webapp.HttpWebApplicationServer) Resource(jakarta.annotation.Resource) ByteArrayInputStream(java.io.ByteArrayInputStream) DeclareRoles(jakarta.annotation.security.DeclareRoles) Arrays.asList(java.util.Arrays.asList) Map(java.util.Map) WebFilter(jakarta.servlet.annotation.WebFilter) AnnotationTarget(org.jboss.jandex.AnnotationTarget) ShrinkWrapResource(cloud.piranha.resource.shrinkwrap.ShrinkWrapResource) HttpServer(cloud.piranha.http.api.HttpServer) ServiceLoader(java.util.ServiceLoader) PreDestroy(jakarta.annotation.PreDestroy) PermitAll(jakarta.annotation.security.PermitAll) WebApplicationExtension(cloud.piranha.core.api.WebApplicationExtension) Objects(java.util.Objects) Stream(java.util.stream.Stream) AnnotationInstance(org.jboss.jandex.AnnotationInstance) DefaultWebApplication(cloud.piranha.core.impl.DefaultWebApplication) MultipartConfig(jakarta.servlet.annotation.MultipartConfig) CLASS(org.jboss.jandex.AnnotationTarget.Kind.CLASS) SAXException(org.xml.sax.SAXException) WebApplication(cloud.piranha.core.api.WebApplication) Annotation(java.lang.annotation.Annotation) Optional(java.util.Optional) DocumentBuilderFactory(javax.xml.parsers.DocumentBuilderFactory) TRUE(java.lang.Boolean.TRUE) Arrays.stream(java.util.Arrays.stream) Level(java.lang.System.Logger.Level) ArchiveAsset(org.jboss.shrinkwrap.api.asset.ArchiveAsset) ServletSecurity(jakarta.servlet.annotation.ServletSecurity) XPath(javax.xml.xpath.XPath) AnnotationManager(cloud.piranha.core.api.AnnotationManager) NODESET(javax.xml.xpath.XPathConstants.NODESET) Resources(jakarta.annotation.Resources) Function(java.util.function.Function) URLConnection(java.net.URLConnection) NamedNodeMap(org.w3c.dom.NamedNodeMap) Priority(jakarta.annotation.Priority) Index(org.jboss.jandex.Index) RolesAllowed(jakarta.annotation.security.RolesAllowed) HandlesTypes(jakarta.servlet.annotation.HandlesTypes) IndexReader(org.jboss.jandex.IndexReader) NodeList(org.w3c.dom.NodeList) DenyAll(jakarta.annotation.security.DenyAll) UTF_8(java.nio.charset.StandardCharsets.UTF_8) INFO(java.lang.System.Logger.Level.INFO) DotName.createSimple(org.jboss.jandex.DotName.createSimple) IOException(java.io.IOException) Archive(org.jboss.shrinkwrap.api.Archive) GlobalArchiveStreamHandler(cloud.piranha.resource.shrinkwrap.GlobalArchiveStreamHandler) Consumer(java.util.function.Consumer) WebListener(jakarta.servlet.annotation.WebListener) FIELD(org.jboss.jandex.AnnotationTarget.Kind.FIELD) XPathFactory(javax.xml.xpath.XPathFactory) METHOD(org.jboss.jandex.AnnotationTarget.Kind.METHOD) Logger(java.lang.System.Logger) ParserConfigurationException(javax.xml.parsers.ParserConfigurationException) WebInitParam(jakarta.servlet.annotation.WebInitParam) InternalAnnotationScanAnnotationManager(cloud.piranha.extension.annotationscan.internal.InternalAnnotationScanAnnotationManager) WebServlet(jakarta.servlet.annotation.WebServlet) InputStream(java.io.InputStream) DefaultWebApplicationExtensionContext(cloud.piranha.core.impl.DefaultWebApplicationExtensionContext) WebApplicationExtension(cloud.piranha.core.api.WebApplicationExtension) Index(org.jboss.jandex.Index) IOException(java.io.IOException) XPathExpressionException(javax.xml.xpath.XPathExpressionException) SAXException(org.xml.sax.SAXException) IOException(java.io.IOException) ParserConfigurationException(javax.xml.parsers.ParserConfigurationException) HttpWebApplicationServer(cloud.piranha.http.webapp.HttpWebApplicationServer) GlobalArchiveStreamHandler(cloud.piranha.resource.shrinkwrap.GlobalArchiveStreamHandler) InternalAnnotationScanAnnotationManager(cloud.piranha.extension.annotationscan.internal.InternalAnnotationScanAnnotationManager) HttpServer(cloud.piranha.http.api.HttpServer) DefaultWebApplication(cloud.piranha.core.impl.DefaultWebApplication) WebApplication(cloud.piranha.core.api.WebApplication) HandlesTypes(jakarta.servlet.annotation.HandlesTypes)

Example 2 with INFO

use of java.lang.System.Logger.Level.INFO in project tcMenu by davetcc.

the class NewProjectController method onCreate.

public void onCreate(ActionEvent actionEvent) {
    boolean newOnlyMode = newOnlyRadio.isSelected();
    if (newOnlyMode) {
        if (!passDirtyCheck())
            return;
        project.newProject();
    } else if (maybeDirectory.isPresent() && !StringHelper.isStringEmptyOrNull(projectNameField.getText())) {
        if (!passDirtyCheck())
            return;
        try {
            String projName = projectNameField.getText();
            var projectCreator = new CreateProjectCommand();
            projectCreator.createNewProject(Paths.get(maybeDirectory.get()), projName, cppMainCheckbox.isSelected(), platformCombo.getSelectionModel().getSelectedItem(), s -> logger.log(INFO, s), namespaceField.getText());
            Path emfFileName = Paths.get(maybeDirectory.get(), projName, projName + ".emf");
            project.openProject(emfFileName.toString());
        } catch (Exception e) {
            logger.log(ERROR, "Failure processing create new project", e);
            var alert = new Alert(Alert.AlertType.ERROR, "Error during create project", ButtonType.CLOSE);
            BaseDialogSupport.getJMetro().setScene(alert.getDialogPane().getScene());
            alert.showAndWait();
        }
    } else {
        var alert = new Alert(Alert.AlertType.WARNING, "Please ensure all fields are populated", ButtonType.CLOSE);
        BaseDialogSupport.getJMetro().setScene(alert.getDialogPane().getScene());
        alert.showAndWait();
        // avoid closing.
        return;
    }
    Stage stage = (Stage) createButton.getScene().getWindow();
    stage.close();
}
Also used : StringHelper(com.thecoderscorner.menu.editorui.util.StringHelper) EmbeddedPlatforms(com.thecoderscorner.menu.editorui.generator.plugin.EmbeddedPlatforms) javafx.scene.control(javafx.scene.control) Files(java.nio.file.Files) INFO(java.lang.System.Logger.Level.INFO) FXCollections(javafx.collections.FXCollections) BaseDialogSupport(com.thecoderscorner.menu.editorui.dialog.BaseDialogSupport) EmbeddedPlatform(com.thecoderscorner.menu.editorui.generator.plugin.EmbeddedPlatform) KeyEvent(javafx.scene.input.KeyEvent) CreateProjectCommand(com.thecoderscorner.menu.editorui.cli.CreateProjectCommand) CurrentEditorProject(com.thecoderscorner.menu.editorui.project.CurrentEditorProject) LogLine(com.thecoderscorner.menu.editorui.generator.ui.LogLine) File(java.io.File) ERROR(java.lang.System.Logger.Level.ERROR) ActionEvent(javafx.event.ActionEvent) Stage(javafx.stage.Stage) Paths(java.nio.file.Paths) ConfigurationStorage(com.thecoderscorner.menu.editorui.storage.ConfigurationStorage) Optional(java.util.Optional) Path(java.nio.file.Path) DirectoryChooser(javafx.stage.DirectoryChooser) Path(java.nio.file.Path) CreateProjectCommand(com.thecoderscorner.menu.editorui.cli.CreateProjectCommand) Stage(javafx.stage.Stage)

Example 3 with INFO

use of java.lang.System.Logger.Level.INFO in project tcMenu by davetcc.

the class GenerateCodeDialog method ensureIoFullyDeclared.

private void ensureIoFullyDeclared(CodePluginItem pluginItem) {
    logger.log(INFO, "Checking for unmapped IO devices: " + pluginItem.getDescription());
    var codeOptions = project.getGeneratorOptions();
    // find any IO device declarations that do not match to an entry in the expanders
    var anyIoWithoutEntries = pluginItem.getProperties().stream().filter(prop -> prop.getValidationRules() instanceof IoExpanderPropertyValidationRules).filter(prop -> codeOptions.getExpanderDefinitions().getDefinitionById(prop.getLatestValue()).isEmpty()).toList();
    // nothing to do if list is empty
    if (anyIoWithoutEntries.isEmpty()) {
        logger.log(INFO, "All IO devices mapped");
        return;
    }
    var allExpanders = new HashSet<>(codeOptions.getExpanderDefinitions().getAllExpanders());
    // now we iterate through the unmapped expanders, which must be from prior to the automated support.
    for (var customIo : anyIoWithoutEntries) {
        if (StringHelper.isStringEmptyOrNull(customIo.getLatestValue())) {
            // for empty strings, the previous assumption was using device IO. This is now explicitly defined
            // as deviceIO
            customIo.setLatestValue(InternalDeviceExpander.DEVICE_ID);
            logger.log(INFO, "Device being mapped as internal: " + customIo.getLatestValue());
        } else {
            // otherwise, previously the assumption was using a custom defined expander in the sketch, now we'll
            // actually add that to the sketch.
            allExpanders.add(new CustomDeviceExpander(customIo.getLatestValue()));
            logger.log(INFO, "Device being mapped as custom: " + customIo.getLatestValue());
        }
    }
    project.setGeneratorOptions(new CodeGeneratorOptionsBuilder().withExisting(codeOptions).withExpanderDefinitions(new IoExpanderDefinitionCollection(allExpanders)).codeOptions());
    logger.log(INFO, "Done mapping all IO devices");
}
Also used : EmbeddedPlatforms(com.thecoderscorner.menu.editorui.generator.plugin.EmbeddedPlatforms) HPos(javafx.geometry.HPos) javafx.scene.layout(javafx.scene.layout) javafx.scene.control(javafx.scene.control) BaseDialogSupport(com.thecoderscorner.menu.editorui.dialog.BaseDialogSupport) CreatorProperty(com.thecoderscorner.menu.editorui.generator.core.CreatorProperty) CHANGE(com.thecoderscorner.menu.editorui.generator.ui.UICodePluginItem.UICodeAction.CHANGE) IoExpanderPropertyValidationRules(com.thecoderscorner.menu.editorui.generator.validation.IoExpanderPropertyValidationRules) FXCollections.observableArrayList(javafx.collections.FXCollections.observableArrayList) ArrayList(java.util.ArrayList) HashSet(java.util.HashSet) Insets(javafx.geometry.Insets) SelectAuthenticatorTypeDialog(com.thecoderscorner.menu.editorui.dialog.SelectAuthenticatorTypeDialog) BiConsumer(java.util.function.BiConsumer) SELECT(com.thecoderscorner.menu.editorui.generator.ui.UICodePluginItem.UICodeAction.SELECT) CustomDeviceExpander(com.thecoderscorner.menu.editorui.generator.parameters.expander.CustomDeviceExpander) IoExpanderDefinitionCollection(com.thecoderscorner.menu.editorui.generator.parameters.IoExpanderDefinitionCollection) StringHelper(com.thecoderscorner.menu.editorui.util.StringHelper) CodeGeneratorOptionsBuilder(com.thecoderscorner.menu.editorui.generator.CodeGeneratorOptionsBuilder) SelectEepromTypeDialog(com.thecoderscorner.menu.editorui.dialog.SelectEepromTypeDialog) InternalDeviceExpander(com.thecoderscorner.menu.editorui.generator.parameters.expander.InternalDeviceExpander) CurrentProjectEditorUI(com.thecoderscorner.menu.editorui.uimodel.CurrentProjectEditorUI) SubSystem(com.thecoderscorner.menu.editorui.generator.core.SubSystem) INFO(java.lang.System.Logger.Level.INFO) CoreCodeGenerator(com.thecoderscorner.menu.editorui.generator.core.CoreCodeGenerator) EmbeddedPlatform(com.thecoderscorner.menu.editorui.generator.plugin.EmbeddedPlatform) CurrentEditorProject(com.thecoderscorner.menu.editorui.project.CurrentEditorProject) Collectors(java.util.stream.Collectors) BaseDialogSupport.createDialogStateAndShow(com.thecoderscorner.menu.editorui.dialog.BaseDialogSupport.createDialogStateAndShow) Popup(javafx.stage.Popup) ERROR(java.lang.System.Logger.Level.ERROR) ActionEvent(javafx.event.ActionEvent) List(java.util.List) CodePluginItem(com.thecoderscorner.menu.editorui.generator.plugin.CodePluginItem) Stage(javafx.stage.Stage) Paths(java.nio.file.Paths) CodeGeneratorOptions(com.thecoderscorner.menu.editorui.generator.CodeGeneratorOptions) Optional(java.util.Optional) CodePluginManager(com.thecoderscorner.menu.editorui.generator.plugin.CodePluginManager) CustomDeviceExpander(com.thecoderscorner.menu.editorui.generator.parameters.expander.CustomDeviceExpander) IoExpanderPropertyValidationRules(com.thecoderscorner.menu.editorui.generator.validation.IoExpanderPropertyValidationRules) IoExpanderDefinitionCollection(com.thecoderscorner.menu.editorui.generator.parameters.IoExpanderDefinitionCollection) HashSet(java.util.HashSet) CodeGeneratorOptionsBuilder(com.thecoderscorner.menu.editorui.generator.CodeGeneratorOptionsBuilder)

Example 4 with INFO

use of java.lang.System.Logger.Level.INFO in project tcMenu by davetcc.

the class PropertiesAuthenticator method addAuthentication.

/**
 * Adds an authentication token to the store, it assumes that all appropriate permission from the user has
 * been sought.
 * @param user the user to add
 * @param uuid the uuid associated with the user
 * @return
 */
@Override
public CompletableFuture<Boolean> addAuthentication(String user, UUID uuid) {
    if (dialogManager == null)
        return CompletableFuture.completedFuture(false);
    return CompletableFuture.supplyAsync(() -> {
        try {
            logger.log(INFO, "Request for authentication with " + user);
            var shouldProceed = new AtomicBoolean(false);
            var dialogLatch = new CountDownLatch(1);
            dialogManager.withTitle("Pair with " + user, true).withMessage("Be sure you know where this connection originated", true).withDelegate(DialogViewer.DialogShowMode.REGULAR, menuButtonType -> {
                shouldProceed.set(menuButtonType == MenuButtonType.ACCEPT);
                dialogLatch.countDown();
                return true;
            }).showDialogWithButtons(MenuButtonType.ACCEPT, MenuButtonType.CANCEL);
            if (!dialogLatch.await(30, TimeUnit.SECONDS)) {
                logger.log(INFO, "Dialog Latch timed out without user operation");
            }
            if (shouldProceed.get()) {
                synchronized (properties) {
                    Path pathLocation = Path.of(location);
                    properties.setProperty(user, uuid.toString());
                    properties.store(Files.newBufferedWriter(pathLocation, CREATE, TRUNCATE_EXISTING), "TcMenu Auth properties");
                }
                logger.log(INFO, "Wrote auth properties to ", location);
                return true;
            } else {
                logger.log(INFO, "Pairing dialog was not accepted");
                return false;
            }
        } catch (Exception e) {
            logger.log(ERROR, "Failed to write auth properties to ", location);
            return false;
        }
    });
}
Also used : Properties(java.util.Properties) Files(java.nio.file.Files) StandardOpenOption(java.nio.file.StandardOpenOption) INFO(java.lang.System.Logger.Level.INFO) DialogManager(com.thecoderscorner.menu.mgr.DialogManager) AtomicBoolean(java.util.concurrent.atomic.AtomicBoolean) IOException(java.io.IOException) CompletableFuture(java.util.concurrent.CompletableFuture) UUID(java.util.UUID) DialogViewer(com.thecoderscorner.menu.mgr.DialogViewer) TimeUnit(java.util.concurrent.TimeUnit) CountDownLatch(java.util.concurrent.CountDownLatch) ERROR(java.lang.System.Logger.Level.ERROR) Path(java.nio.file.Path) MenuButtonType(com.thecoderscorner.menu.remote.commands.MenuButtonType) Path(java.nio.file.Path) AtomicBoolean(java.util.concurrent.atomic.AtomicBoolean) CountDownLatch(java.util.concurrent.CountDownLatch) IOException(java.io.IOException)

Example 5 with INFO

use of java.lang.System.Logger.Level.INFO in project piranha by piranhacloud.

the class IsolatedServerPiranha method run.

/**
 * Start method.
 */
@Override
public void run() {
    long startTime = System.currentTimeMillis();
    LOGGER.log(INFO, () -> "Starting Piranha");
    webApplicationServer = new HttpWebApplicationServer();
    HttpServer httpServer = ServiceLoader.load(HttpServer.class).findFirst().orElseThrow();
    httpServer.setServerPort(8080);
    httpServer.setHttpServerProcessor(webApplicationServer);
    httpServer.setSSL(ssl);
    httpServer.start();
    webApplicationServer.start();
    File[] webapps = new File("webapps").listFiles();
    if (webapps != null) {
        if (webapps.length != 0) {
            // Limit threads used by Weld, since default is Runtime.getRuntime().availableProcessors(), which is per deployment.
            int threadsPerApp = Math.max(2, Runtime.getRuntime().availableProcessors() / webapps.length);
            System.setProperty("org.jboss.weld.executor.threadPoolSize", threadsPerApp + "");
        }
        File deployingFile = createDeployingFile();
        Arrays.stream(webapps).parallel().filter(warFile -> warFile.getName().toLowerCase().endsWith(".war")).forEach(warFile -> deploy(warFile, webApplicationServer));
        try {
            Files.delete(deployingFile.toPath());
        } catch (IOException ioe) {
            LOGGER.log(WARNING, "Unable to delete deploying file", ioe);
        }
    }
    long finishTime = System.currentTimeMillis();
    LOGGER.log(INFO, "Started Piranha");
    LOGGER.log(INFO, "It took {0} milliseconds", finishTime - startTime);
    File startedFile = createStartedFile();
    File pidFile = new File("tmp/piranha.pid");
    while (httpServer.isRunning()) {
        try {
            Thread.sleep(2000);
        } catch (InterruptedException ie) {
            Thread.currentThread().interrupt();
        }
        if (!pidFile.exists()) {
            webApplicationServer.stop();
            httpServer.stop();
            try {
                Files.delete(startedFile.toPath());
            } catch (IOException ioe) {
                LOGGER.log(WARNING, "Unable to delete PID file", ioe);
            }
            System.exit(0);
        }
    }
    finishTime = System.currentTimeMillis();
    LOGGER.log(INFO, "Stopped Piranha");
    LOGGER.log(INFO, "We ran for {0} milliseconds", finishTime - startTime);
}
Also used : Piranha(cloud.piranha.core.api.Piranha) ZipImporter(org.jboss.shrinkwrap.api.importer.ZipImporter) Arrays(java.util.Arrays) ShrinkWrap(org.jboss.shrinkwrap.api.ShrinkWrap) WebArchive(org.jboss.shrinkwrap.api.spec.WebArchive) WebApplicationRequest(cloud.piranha.core.api.WebApplicationRequest) WARNING(java.lang.System.Logger.Level.WARNING) Files(java.nio.file.Files) HttpServer(cloud.piranha.http.api.HttpServer) INFO(java.lang.System.Logger.Level.INFO) IOException(java.io.IOException) ServiceLoader(java.util.ServiceLoader) ServletException(jakarta.servlet.ServletException) File(java.io.File) HttpWebApplicationServer(cloud.piranha.http.webapp.HttpWebApplicationServer) WebApplicationResponse(cloud.piranha.core.api.WebApplicationResponse) Logger(java.lang.System.Logger) MicroWebApplication(cloud.piranha.micro.shrinkwrap.builder.MicroWebApplication) MicroOuterDeployer(cloud.piranha.micro.shrinkwrap.loader.MicroOuterDeployer) MicroConfiguration(cloud.piranha.micro.shrinkwrap.loader.MicroConfiguration) Level(java.lang.System.Logger.Level) HttpServer(cloud.piranha.http.api.HttpServer) IOException(java.io.IOException) File(java.io.File) HttpWebApplicationServer(cloud.piranha.http.webapp.HttpWebApplicationServer)

Aggregations

INFO (java.lang.System.Logger.Level.INFO)5 IOException (java.io.IOException)3 HttpServer (cloud.piranha.http.api.HttpServer)2 HttpWebApplicationServer (cloud.piranha.http.webapp.HttpWebApplicationServer)2 BaseDialogSupport (com.thecoderscorner.menu.editorui.dialog.BaseDialogSupport)2 EmbeddedPlatform (com.thecoderscorner.menu.editorui.generator.plugin.EmbeddedPlatform)2 EmbeddedPlatforms (com.thecoderscorner.menu.editorui.generator.plugin.EmbeddedPlatforms)2 CurrentEditorProject (com.thecoderscorner.menu.editorui.project.CurrentEditorProject)2 StringHelper (com.thecoderscorner.menu.editorui.util.StringHelper)2 File (java.io.File)2 ERROR (java.lang.System.Logger.Level.ERROR)2 Files (java.nio.file.Files)2 Optional (java.util.Optional)2 AnnotationManager (cloud.piranha.core.api.AnnotationManager)1 Piranha (cloud.piranha.core.api.Piranha)1 WebApplication (cloud.piranha.core.api.WebApplication)1 WebApplicationExtension (cloud.piranha.core.api.WebApplicationExtension)1 WebApplicationRequest (cloud.piranha.core.api.WebApplicationRequest)1 WebApplicationResponse (cloud.piranha.core.api.WebApplicationResponse)1 DefaultWebApplication (cloud.piranha.core.impl.DefaultWebApplication)1