Search in sources :

Example 1 with JdbcDriver

use of org.jboss.hal.core.datasource.JdbcDriver in project console by hal.

the class DataSourceColumn method prepareWizard.

private void prepareWizard(boolean xa) {
    Task<FlowContext> readDataSources = context -> crud.readChildren(DATA_SOURCE_SUBSYSTEM_TEMPLATE, xa ? XA_DATA_SOURCE : DATA_SOURCE).doOnSuccess(children -> {
        List<DataSource> dataSources = children.stream().map(property -> new DataSource(property, xa)).collect(toList());
        context.set(DATASOURCES, dataSources);
    }).toCompletable();
    List<Task<FlowContext>> tasks = new ArrayList<>();
    tasks.add(readDataSources);
    tasks.addAll(runningServers(environment, dispatcher, properties(PROFILE_NAME, statementContext.selectedProfile())));
    tasks.add(new JdbcDriverTasks.ReadRuntime(environment, dispatcher));
    tasks.add(new JdbcDriverTasks.CombineDriverResults());
    series(new FlowContext(progress.get()), tasks).subscribe(new Outcome<FlowContext>() {

        @Override
        public void onError(FlowContext context, Throwable error) {
            showWizard(Collections.emptyList(), Collections.emptyList(), xa);
        }

        @Override
        public void onSuccess(FlowContext context) {
            List<DataSource> dataSources = context.get(DATASOURCES);
            List<JdbcDriver> drivers = context.get(JdbcDriverTasks.DRIVERS);
            showWizard(dataSources, drivers, xa);
        }
    });
}
Also used : Provider(javax.inject.Provider) Environment(org.jboss.hal.config.Environment) Constraint(org.jboss.hal.meta.security.Constraint) ItemActionFactory(org.jboss.hal.core.finder.ItemActionFactory) StatementContext(org.jboss.hal.meta.StatementContext) ItemDisplay(org.jboss.hal.core.finder.ItemDisplay) ResourceAddress(org.jboss.hal.dmr.ResourceAddress) Icons(org.jboss.hal.resources.Icons) JdbcDriver(org.jboss.hal.core.datasource.JdbcDriver) HTMLElement(elemental2.dom.HTMLElement) TopologyTasks.runningServers(org.jboss.hal.core.runtime.TopologyTasks.runningServers) Message(org.jboss.hal.spi.Message) Places(org.jboss.hal.core.mvp.Places) Names(org.jboss.hal.resources.Names) CrudOperations(org.jboss.hal.core.CrudOperations) List(java.util.List) MetadataRegistry(org.jboss.hal.meta.MetadataRegistry) ModelDescriptionConstants(org.jboss.hal.dmr.ModelDescriptionConstants) DataSourceWizard(org.jboss.hal.client.configuration.subsystem.datasource.wizard.DataSourceWizard) AddressTemplates(org.jboss.hal.client.configuration.subsystem.datasource.AddressTemplates) Flow.series(org.jboss.hal.flow.Flow.series) Finder(org.jboss.hal.core.finder.Finder) Footer(org.jboss.hal.spi.Footer) SafeHtml(com.google.gwt.safehtml.shared.SafeHtml) AsyncColumn(org.jboss.hal.spi.AsyncColumn) MessageEvent(org.jboss.hal.spi.MessageEvent) ColumnAction(org.jboss.hal.core.finder.ColumnAction) ItemAction(org.jboss.hal.core.finder.ItemAction) FlowContext(org.jboss.hal.flow.FlowContext) Outcome(org.jboss.hal.flow.Outcome) ArrayList(java.util.ArrayList) Inject(javax.inject.Inject) Task(org.jboss.hal.flow.Task) Progress(org.jboss.hal.flow.Progress) RESTORE_SELECTION(org.jboss.hal.core.finder.FinderColumn.RefreshMode.RESTORE_SELECTION) FinderColumn(org.jboss.hal.core.finder.FinderColumn) Comparator.comparing(java.util.Comparator.comparing) ModelNodeHelper.properties(org.jboss.hal.dmr.ModelNodeHelper.properties) ColumnActionFactory(org.jboss.hal.core.finder.ColumnActionFactory) Requires(org.jboss.hal.spi.Requires) CompositeResult(org.jboss.hal.dmr.CompositeResult) Operation(org.jboss.hal.dmr.Operation) Ids(org.jboss.hal.resources.Ids) EventBus(com.google.web.bindery.event.shared.EventBus) CSS.pfIcon(org.jboss.hal.resources.CSS.pfIcon) PlaceRequest(com.gwtplatform.mvp.shared.proxy.PlaceRequest) Composite(org.jboss.hal.dmr.Composite) Dispatcher(org.jboss.hal.dmr.dispatch.Dispatcher) Collectors.toList(java.util.stream.Collectors.toList) NameTokens(org.jboss.hal.meta.token.NameTokens) Resources(org.jboss.hal.resources.Resources) DataSource(org.jboss.hal.core.datasource.DataSource) NamedNode(org.jboss.hal.dmr.NamedNode) Collections(java.util.Collections) Task(org.jboss.hal.flow.Task) ArrayList(java.util.ArrayList) FlowContext(org.jboss.hal.flow.FlowContext) DataSource(org.jboss.hal.core.datasource.DataSource) List(java.util.List) ArrayList(java.util.ArrayList) Collectors.toList(java.util.stream.Collectors.toList)

Example 2 with JdbcDriver

use of org.jboss.hal.core.datasource.JdbcDriver in project console by hal.

the class Context method custom.

void custom() {
    dataSource = new DataSource(xa);
    driver = new JdbcDriver();
    xaProperties.clear();
}
Also used : JdbcDriver(org.jboss.hal.core.datasource.JdbcDriver) DataSource(org.jboss.hal.core.datasource.DataSource)

Example 3 with JdbcDriver

use of org.jboss.hal.core.datasource.JdbcDriver in project console by hal.

the class DriverStep method onNext.

@Override
protected boolean onNext(Context context) {
    boolean valid = form.save();
    if (valid) {
        JdbcDriver driver = form.getModel();
        context.dataSource.setDriver(driver);
        if (context.isCreated()) {
            context.recordChange(DRIVER_NAME, driver.getName());
            if (context.isXa()) {
                context.recordChange(XA_DATASOURCE_CLASS, driver.get(DRIVER_XA_DATASOURCE_CLASS_NAME).asString());
            } else {
                context.recordChange(DRIVER_CLASS, driver.get(DRIVER_CLASS_NAME).asString());
            }
        }
    }
    return valid;
}
Also used : JdbcDriver(org.jboss.hal.core.datasource.JdbcDriver)

Example 4 with JdbcDriver

use of org.jboss.hal.core.datasource.JdbcDriver in project console by hal.

the class DriverStep method assignFromJdbcDriverOrTemplate.

@SuppressWarnings("unchecked")
private void assignFromJdbcDriverOrTemplate(String driverName, String propName) {
    FormItem formItem = form.getFormItem(propName);
    if (formItem != null) {
        JdbcDriver driver = driversByName.get(driverName);
        DataSourceTemplate template = this.wizard().getContext().template;
        if (driver != null && driver.hasDefined(propName) && !driver.get(propName).asString().isEmpty()) {
            // assign the value inside the driver
            formItem.setModified(true);
            formItem.setValue(driver.get(propName).asString());
        } else if (template != null && template.getDriver() != null && template.getDriver().hasDefined(propName) && !template.getDriver().get(propName).asString().isEmpty()) {
            // assign the value in the template
            formItem.setModified(true);
            formItem.setValue(this.wizard().getContext().template.getDriver().get(propName).asString());
        }
    // let the current value at it is now
    }
}
Also used : JdbcDriver(org.jboss.hal.core.datasource.JdbcDriver) FormItem(org.jboss.hal.ballroom.form.FormItem) DataSourceTemplate(org.jboss.hal.client.configuration.subsystem.datasource.DataSourceTemplate)

Aggregations

JdbcDriver (org.jboss.hal.core.datasource.JdbcDriver)4 DataSource (org.jboss.hal.core.datasource.DataSource)2 SafeHtml (com.google.gwt.safehtml.shared.SafeHtml)1 EventBus (com.google.web.bindery.event.shared.EventBus)1 PlaceRequest (com.gwtplatform.mvp.shared.proxy.PlaceRequest)1 HTMLElement (elemental2.dom.HTMLElement)1 ArrayList (java.util.ArrayList)1 Collections (java.util.Collections)1 Comparator.comparing (java.util.Comparator.comparing)1 List (java.util.List)1 Collectors.toList (java.util.stream.Collectors.toList)1 Inject (javax.inject.Inject)1 Provider (javax.inject.Provider)1 FormItem (org.jboss.hal.ballroom.form.FormItem)1 AddressTemplates (org.jboss.hal.client.configuration.subsystem.datasource.AddressTemplates)1 DataSourceTemplate (org.jboss.hal.client.configuration.subsystem.datasource.DataSourceTemplate)1 DataSourceWizard (org.jboss.hal.client.configuration.subsystem.datasource.wizard.DataSourceWizard)1 Environment (org.jboss.hal.config.Environment)1 CrudOperations (org.jboss.hal.core.CrudOperations)1 ColumnAction (org.jboss.hal.core.finder.ColumnAction)1