net.sourceforge.msscodefactory.cfbam.v2_7.CFBamJavaFX.CFBamJavaFXSchemaDefPickerPane.java Source code

Java tutorial

Introduction

Here is the source code for net.sourceforge.msscodefactory.cfbam.v2_7.CFBamJavaFX.CFBamJavaFXSchemaDefPickerPane.java

Source

// Description: Java 8 JavaFX Picker of Obj Pane implementation for SchemaDef.

/*
 *   CFBam
 *
 *   Copyright (c) 2014-2016 Mark Sobkow
 *   
 *   This program is available as free software under the GNU GPL v3, or
 *   under a commercial license from Mark Sobkow.  For commercial licensing
 *   details, please contact msobkow@sasktel.net.
 *   
 *   Under the terms of the GPL:
 *   
 *      This program is free software: you can redistribute it and/or modify
 *      it under the terms of the GNU General Public License as published by
 *      the Free Software Foundation, either version 3 of the License, or
 *      (at your option) any later version.
 *     
 *      This program is distributed in the hope that it will be useful,
 *      but WITHOUT ANY WARRANTY; without even the implied warranty of
 *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *      GNU General Public License for more details.
 *     
 *      You should have received a copy of the GNU General Public License
 *      along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *   
 */

package net.sourceforge.msscodefactory.cfbam.v2_7.CFBamJavaFX;

import java.math.*;
import java.sql.*;
import java.text.*;
import java.util.*;
import java.util.List;
import javafx.beans.property.ReadOnlyObjectWrapper;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Parent;
import javafx.scene.control.ScrollPane;
import javafx.scene.control.ScrollPane.ScrollBarPolicy;
import javafx.scene.control.TableCell;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableColumn.CellDataFeatures;
import javafx.scene.control.TableView;
import javafx.util.Callback;
import net.sourceforge.msscodefactory.cflib.v2_7.CFLib.*;
import net.sourceforge.msscodefactory.cflib.v2_7.CFLib.JavaFX.*;
import org.apache.commons.codec.binary.Base64;
import net.sourceforge.msscodefactory.cfsecurity.v2_7.CFSecurity.*;
import net.sourceforge.msscodefactory.cfinternet.v2_7.CFInternet.*;
import net.sourceforge.msscodefactory.cfbam.v2_7.CFBam.*;
import net.sourceforge.msscodefactory.cfsecurity.v2_7.CFSecurityObj.*;
import net.sourceforge.msscodefactory.cfinternet.v2_7.CFInternetObj.*;
import net.sourceforge.msscodefactory.cfbam.v2_7.CFBamObj.*;
import net.sourceforge.msscodefactory.cfsecurity.v2_7.CFSecurityJavaFX.*;
import net.sourceforge.msscodefactory.cfinternet.v2_7.CFInternetJavaFX.*;

/**
 *   CFBamJavaFXSchemaDefPickerPane JavaFX Pick Obj Pane implementation
 *   for SchemaDef.
 */
public class CFBamJavaFXSchemaDefPickerPane extends CFBorderPane implements ICFBamJavaFXSchemaDefPaneList {
    public static String S_FormName = "Choose SchemaDef";
    protected ICFBamJavaFXSchema javafxSchema = null;
    protected Collection<ICFBamSchemaDefObj> javafxDataCollection = null;
    protected ObservableList<ICFBamSchemaDefObj> observableListOfSchemaDef = null;
    protected TableColumn<ICFBamSchemaDefObj, Long> tableColumnId = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnName = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnDbName = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnShortName = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnLabel = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnShortDescription = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnDescription = null;
    protected TableColumn<ICFBamSchemaDefObj, Boolean> tableColumnExtendCFCore = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnCopyrightPeriod = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnCopyrightHolder = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnPublishURI = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJSchemaObjImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJSchemaObjInterface = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJSchemaObjMembers = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJSchemaObjImplementation = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJDb2LUWSchemaObjMembers = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJDb2LUWSchemaObjImpl = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJDb2LUWSchemaObjImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJMSSqlSchemaObjMembers = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJMSSqlSchemaObjImpl = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJMSSqlSchemaObjImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJMySqlSchemaObjMembers = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJMySqlSchemaObjImpl = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJMySqlSchemaObjImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJOracleSchemaObjMembers = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJOracleSchemaObjImpl = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJOracleSchemaObjImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJPgSqlSchemaObjMembers = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJPgSqlSchemaObjImpl = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJPgSqlSchemaObjImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJSybaseSchemaObjMembers = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJSybaseSchemaObjImpl = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJSybaseSchemaObjImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJRamSchemaObjMembers = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJRamSchemaObjImpl = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJRamSchemaObjImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgSchemaImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgSchemaFormatters = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgClientSchemaImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgClientSchemaBody = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgRqstSchemaBody = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgRqstSchemaImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgRqstSchemaWireParsers = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgRqstSchemaXsdSpec = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgRqstSchemaXsdElementList = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgRspnSchemaBody = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgRspnSchemaImport = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgRspnSchemaWireParsers = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgRspnSchemaXsdElementList = null;
    protected TableColumn<ICFBamSchemaDefObj, String> tableColumnJXMsgRspnSchemaXsdSpec = null;
    protected TableColumn<ICFBamSchemaDefObj, ICFInternetLicenseObj> tableColumnLookupDefaultLicense = null;
    protected TableView<ICFBamSchemaDefObj> dataTable = null;
    protected CFHBox hboxMenu = null;
    public final String S_ColumnNames[] = { "Name" };
    protected ICFFormManager cfFormManager = null;
    protected ICFBamJavaFXSchemaDefChosen invokeWhenChosen = null;
    protected ICFInternetDomainBaseObj javafxContainer = null;
    protected CFButton buttonCancel = null;
    protected CFButton buttonChooseNone = null;
    protected CFButton buttonChooseSelected = null;

    public CFBamJavaFXSchemaDefPickerPane(ICFFormManager formManager, ICFBamJavaFXSchema argSchema,
            ICFBamSchemaDefObj argFocus, ICFInternetDomainBaseObj argContainer,
            Collection<ICFBamSchemaDefObj> argDataCollection, ICFBamJavaFXSchemaDefChosen whenChosen) {
        super();
        final String S_ProcName = "construct-schema-focus";
        if (formManager == null) {
            throw CFLib.getDefaultExceptionFactory().newNullArgumentException(getClass(), S_ProcName, 1,
                    "formManager");
        }
        cfFormManager = formManager;
        if (argSchema == null) {
            throw CFLib.getDefaultExceptionFactory().newNullArgumentException(getClass(), S_ProcName, 2,
                    "argSchema");
        }
        if (whenChosen == null) {
            throw CFLib.getDefaultExceptionFactory().newNullArgumentException(getClass(), S_ProcName, 6,
                    "whenChosen");
        }
        invokeWhenChosen = whenChosen;
        // argFocus is optional; focus may be set later during execution as
        // conditions of the runtime change.
        javafxSchema = argSchema;
        javaFXFocus = argFocus;
        javafxContainer = argContainer;
        setJavaFXDataCollection(argDataCollection);
        dataTable = new TableView<ICFBamSchemaDefObj>();
        tableColumnId = new TableColumn<ICFBamSchemaDefObj, Long>("Id");
        tableColumnId.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, Long>, ObservableValue<Long>>() {
                    public ObservableValue<Long> call(CellDataFeatures<ICFBamSchemaDefObj, Long> p) {
                        ICFBamScopeObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            long value = obj.getRequiredId();
                            Long wrapped = new Long(value);
                            ReadOnlyObjectWrapper<Long> observable = new ReadOnlyObjectWrapper<Long>();
                            observable.setValue(wrapped);
                            return (observable);
                        }
                    }
                });
        tableColumnId.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, Long>, TableCell<ICFBamSchemaDefObj, Long>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, Long> call(TableColumn<ICFBamSchemaDefObj, Long> arg) {
                        return new CFInt64TableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnId);
        tableColumnName = new TableColumn<ICFBamSchemaDefObj, String>("Name");
        tableColumnName.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getRequiredName();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnName.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFStringTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnName);
        tableColumnDbName = new TableColumn<ICFBamSchemaDefObj, String>("Db Name");
        tableColumnDbName.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalDbName();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnDbName.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFStringTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnDbName);
        tableColumnShortName = new TableColumn<ICFBamSchemaDefObj, String>("Short Name");
        tableColumnShortName.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalShortName();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnShortName.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFStringTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnShortName);
        tableColumnLabel = new TableColumn<ICFBamSchemaDefObj, String>("Label");
        tableColumnLabel.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalLabel();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnLabel.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFStringTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnLabel);
        tableColumnShortDescription = new TableColumn<ICFBamSchemaDefObj, String>("Short Description");
        tableColumnShortDescription.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalShortDescription();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnShortDescription.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFStringTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnShortDescription);
        tableColumnDescription = new TableColumn<ICFBamSchemaDefObj, String>("Description");
        tableColumnDescription.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalDescription();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnDescription.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFStringTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnDescription);
        tableColumnExtendCFCore = new TableColumn<ICFBamSchemaDefObj, Boolean>("Extend CF Core");
        tableColumnExtendCFCore.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, Boolean>, ObservableValue<Boolean>>() {
                    public ObservableValue<Boolean> call(CellDataFeatures<ICFBamSchemaDefObj, Boolean> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            boolean value = obj.getRequiredExtendCFCore();
                            Boolean wrapped = new Boolean(value);
                            ReadOnlyObjectWrapper<Boolean> observable = new ReadOnlyObjectWrapper<Boolean>();
                            observable.setValue(wrapped);
                            return (observable);
                        }
                    }
                });
        tableColumnExtendCFCore.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, Boolean>, TableCell<ICFBamSchemaDefObj, Boolean>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, Boolean> call(
                            TableColumn<ICFBamSchemaDefObj, Boolean> arg) {
                        return new CFBoolTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnExtendCFCore);
        tableColumnCopyrightPeriod = new TableColumn<ICFBamSchemaDefObj, String>("Copyright Period");
        tableColumnCopyrightPeriod.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getRequiredCopyrightPeriod();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnCopyrightPeriod.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFStringTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnCopyrightPeriod);
        tableColumnCopyrightHolder = new TableColumn<ICFBamSchemaDefObj, String>("Copyright Holder");
        tableColumnCopyrightHolder.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getRequiredCopyrightHolder();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnCopyrightHolder.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFStringTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnCopyrightHolder);
        tableColumnPublishURI = new TableColumn<ICFBamSchemaDefObj, String>("Publish URI");
        tableColumnPublishURI.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getRequiredPublishURI();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnPublishURI.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFStringTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnPublishURI);
        tableColumnJSchemaObjImport = new TableColumn<ICFBamSchemaDefObj, String>("JSchemaObjImport");
        tableColumnJSchemaObjImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJSchemaObjImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJSchemaObjImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJSchemaObjImport);
        tableColumnJSchemaObjInterface = new TableColumn<ICFBamSchemaDefObj, String>("JSchemaObjInterface");
        tableColumnJSchemaObjInterface.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJSchemaObjInterface();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJSchemaObjInterface.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJSchemaObjInterface);
        tableColumnJSchemaObjMembers = new TableColumn<ICFBamSchemaDefObj, String>("JSchemaObjMembers");
        tableColumnJSchemaObjMembers.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJSchemaObjMembers();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJSchemaObjMembers.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJSchemaObjMembers);
        tableColumnJSchemaObjImplementation = new TableColumn<ICFBamSchemaDefObj, String>(
                "JSchemaObjImplementation");
        tableColumnJSchemaObjImplementation.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJSchemaObjImplementation();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJSchemaObjImplementation.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJSchemaObjImplementation);
        tableColumnJDb2LUWSchemaObjMembers = new TableColumn<ICFBamSchemaDefObj, String>("JDb2LUWSchemaObjMembers");
        tableColumnJDb2LUWSchemaObjMembers.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJDb2LUWSchemaObjMembers();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJDb2LUWSchemaObjMembers.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJDb2LUWSchemaObjMembers);
        tableColumnJDb2LUWSchemaObjImpl = new TableColumn<ICFBamSchemaDefObj, String>("JDb2LUWSchemaObjImpl");
        tableColumnJDb2LUWSchemaObjImpl.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJDb2LUWSchemaObjImpl();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJDb2LUWSchemaObjImpl.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJDb2LUWSchemaObjImpl);
        tableColumnJDb2LUWSchemaObjImport = new TableColumn<ICFBamSchemaDefObj, String>("JDb2LUWSchemaObjImport");
        tableColumnJDb2LUWSchemaObjImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJDb2LUWSchemaObjImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJDb2LUWSchemaObjImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJDb2LUWSchemaObjImport);
        tableColumnJMSSqlSchemaObjMembers = new TableColumn<ICFBamSchemaDefObj, String>("JMSSqlSchemaObjMembers");
        tableColumnJMSSqlSchemaObjMembers.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJMSSqlSchemaObjMembers();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJMSSqlSchemaObjMembers.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJMSSqlSchemaObjMembers);
        tableColumnJMSSqlSchemaObjImpl = new TableColumn<ICFBamSchemaDefObj, String>("JMSSqlSchemaObjImpl");
        tableColumnJMSSqlSchemaObjImpl.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJMSSqlSchemaObjImpl();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJMSSqlSchemaObjImpl.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJMSSqlSchemaObjImpl);
        tableColumnJMSSqlSchemaObjImport = new TableColumn<ICFBamSchemaDefObj, String>("JMSSqlSchemaObjImport");
        tableColumnJMSSqlSchemaObjImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJMSSqlSchemaObjImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJMSSqlSchemaObjImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJMSSqlSchemaObjImport);
        tableColumnJMySqlSchemaObjMembers = new TableColumn<ICFBamSchemaDefObj, String>("JMySqlSchemaObjMembers");
        tableColumnJMySqlSchemaObjMembers.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJMySqlSchemaObjMembers();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJMySqlSchemaObjMembers.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJMySqlSchemaObjMembers);
        tableColumnJMySqlSchemaObjImpl = new TableColumn<ICFBamSchemaDefObj, String>("JMySqlSchemaObjImpl");
        tableColumnJMySqlSchemaObjImpl.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJMySqlSchemaObjImpl();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJMySqlSchemaObjImpl.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJMySqlSchemaObjImpl);
        tableColumnJMySqlSchemaObjImport = new TableColumn<ICFBamSchemaDefObj, String>("JMySqlSchemaObjImport");
        tableColumnJMySqlSchemaObjImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJMySqlSchemaObjImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJMySqlSchemaObjImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJMySqlSchemaObjImport);
        tableColumnJOracleSchemaObjMembers = new TableColumn<ICFBamSchemaDefObj, String>("JOracleSchemaObjMembers");
        tableColumnJOracleSchemaObjMembers.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJOracleSchemaObjMembers();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJOracleSchemaObjMembers.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJOracleSchemaObjMembers);
        tableColumnJOracleSchemaObjImpl = new TableColumn<ICFBamSchemaDefObj, String>("JOracleSchemaObjImpl");
        tableColumnJOracleSchemaObjImpl.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJOracleSchemaObjImpl();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJOracleSchemaObjImpl.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJOracleSchemaObjImpl);
        tableColumnJOracleSchemaObjImport = new TableColumn<ICFBamSchemaDefObj, String>("JOracleSchemaObjImport");
        tableColumnJOracleSchemaObjImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJOracleSchemaObjImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJOracleSchemaObjImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJOracleSchemaObjImport);
        tableColumnJPgSqlSchemaObjMembers = new TableColumn<ICFBamSchemaDefObj, String>("JPgSqlSchemaObjMembers");
        tableColumnJPgSqlSchemaObjMembers.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJPgSqlSchemaObjMembers();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJPgSqlSchemaObjMembers.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJPgSqlSchemaObjMembers);
        tableColumnJPgSqlSchemaObjImpl = new TableColumn<ICFBamSchemaDefObj, String>("JPgSqlSchemaObjImpl");
        tableColumnJPgSqlSchemaObjImpl.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJPgSqlSchemaObjImpl();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJPgSqlSchemaObjImpl.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJPgSqlSchemaObjImpl);
        tableColumnJPgSqlSchemaObjImport = new TableColumn<ICFBamSchemaDefObj, String>("JPgSqlSchemaObjImport");
        tableColumnJPgSqlSchemaObjImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJPgSqlSchemaObjImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJPgSqlSchemaObjImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJPgSqlSchemaObjImport);
        tableColumnJSybaseSchemaObjMembers = new TableColumn<ICFBamSchemaDefObj, String>("JSybaseSchemaObjMembers");
        tableColumnJSybaseSchemaObjMembers.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJSybaseSchemaObjMembers();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJSybaseSchemaObjMembers.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJSybaseSchemaObjMembers);
        tableColumnJSybaseSchemaObjImpl = new TableColumn<ICFBamSchemaDefObj, String>("JSybaseSchemaObjImpl");
        tableColumnJSybaseSchemaObjImpl.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJSybaseSchemaObjImpl();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJSybaseSchemaObjImpl.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJSybaseSchemaObjImpl);
        tableColumnJSybaseSchemaObjImport = new TableColumn<ICFBamSchemaDefObj, String>("JSybaseSchemaObjImport");
        tableColumnJSybaseSchemaObjImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJSybaseSchemaObjImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJSybaseSchemaObjImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJSybaseSchemaObjImport);
        tableColumnJRamSchemaObjMembers = new TableColumn<ICFBamSchemaDefObj, String>("JRamSchemaObjMembers");
        tableColumnJRamSchemaObjMembers.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJRamSchemaObjMembers();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJRamSchemaObjMembers.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJRamSchemaObjMembers);
        tableColumnJRamSchemaObjImpl = new TableColumn<ICFBamSchemaDefObj, String>("JRamSchemaObjImpl");
        tableColumnJRamSchemaObjImpl.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJRamSchemaObjImpl();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJRamSchemaObjImpl.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJRamSchemaObjImpl);
        tableColumnJRamSchemaObjImport = new TableColumn<ICFBamSchemaDefObj, String>("JRamSchemaObjImport");
        tableColumnJRamSchemaObjImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJRamSchemaObjImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJRamSchemaObjImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJRamSchemaObjImport);
        tableColumnJXMsgSchemaImport = new TableColumn<ICFBamSchemaDefObj, String>("JXMsgSchemaImport");
        tableColumnJXMsgSchemaImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgSchemaImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgSchemaImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgSchemaImport);
        tableColumnJXMsgSchemaFormatters = new TableColumn<ICFBamSchemaDefObj, String>("JXMsgSchemaFormatters");
        tableColumnJXMsgSchemaFormatters.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgSchemaFormatters();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgSchemaFormatters.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgSchemaFormatters);
        tableColumnJXMsgClientSchemaImport = new TableColumn<ICFBamSchemaDefObj, String>("JXMsgClientSchemaImport");
        tableColumnJXMsgClientSchemaImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgClientSchemaImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgClientSchemaImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgClientSchemaImport);
        tableColumnJXMsgClientSchemaBody = new TableColumn<ICFBamSchemaDefObj, String>("JXMsgClientSchemaBody");
        tableColumnJXMsgClientSchemaBody.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgClientSchemaBody();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgClientSchemaBody.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgClientSchemaBody);
        tableColumnJXMsgRqstSchemaBody = new TableColumn<ICFBamSchemaDefObj, String>("JXMsgRqstSchemaBody");
        tableColumnJXMsgRqstSchemaBody.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgRqstSchemaBody();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgRqstSchemaBody.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgRqstSchemaBody);
        tableColumnJXMsgRqstSchemaImport = new TableColumn<ICFBamSchemaDefObj, String>("JXMsgRqstSchemaImport");
        tableColumnJXMsgRqstSchemaImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgRqstSchemaImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgRqstSchemaImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgRqstSchemaImport);
        tableColumnJXMsgRqstSchemaWireParsers = new TableColumn<ICFBamSchemaDefObj, String>(
                "JXMsgRqstSchemaWireParsers");
        tableColumnJXMsgRqstSchemaWireParsers.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgRqstSchemaWireParsers();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgRqstSchemaWireParsers.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgRqstSchemaWireParsers);
        tableColumnJXMsgRqstSchemaXsdSpec = new TableColumn<ICFBamSchemaDefObj, String>("JXMsgRqstSchemaXsdSpec");
        tableColumnJXMsgRqstSchemaXsdSpec.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgRqstSchemaXsdSpec();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgRqstSchemaXsdSpec.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgRqstSchemaXsdSpec);
        tableColumnJXMsgRqstSchemaXsdElementList = new TableColumn<ICFBamSchemaDefObj, String>(
                "JXMsgRqstSchemaXsdElementList");
        tableColumnJXMsgRqstSchemaXsdElementList.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgRqstSchemaXsdElementList();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgRqstSchemaXsdElementList.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgRqstSchemaXsdElementList);
        tableColumnJXMsgRspnSchemaBody = new TableColumn<ICFBamSchemaDefObj, String>("JXMsgRspnSchemaBody");
        tableColumnJXMsgRspnSchemaBody.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgRspnSchemaBody();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgRspnSchemaBody.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgRspnSchemaBody);
        tableColumnJXMsgRspnSchemaImport = new TableColumn<ICFBamSchemaDefObj, String>("JXMsgRspnSchemaImport");
        tableColumnJXMsgRspnSchemaImport.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgRspnSchemaImport();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgRspnSchemaImport.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgRspnSchemaImport);
        tableColumnJXMsgRspnSchemaWireParsers = new TableColumn<ICFBamSchemaDefObj, String>(
                "JXMsgRspnSchemaWireParsers");
        tableColumnJXMsgRspnSchemaWireParsers.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgRspnSchemaWireParsers();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgRspnSchemaWireParsers.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgRspnSchemaWireParsers);
        tableColumnJXMsgRspnSchemaXsdElementList = new TableColumn<ICFBamSchemaDefObj, String>(
                "JXMsgRspnSchemaXsdElementList");
        tableColumnJXMsgRspnSchemaXsdElementList.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgRspnSchemaXsdElementList();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgRspnSchemaXsdElementList.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgRspnSchemaXsdElementList);
        tableColumnJXMsgRspnSchemaXsdSpec = new TableColumn<ICFBamSchemaDefObj, String>("JXMsgRspnSchemaXsdSpec");
        tableColumnJXMsgRspnSchemaXsdSpec.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, String>, ObservableValue<String>>() {
                    public ObservableValue<String> call(CellDataFeatures<ICFBamSchemaDefObj, String> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            String value = obj.getOptionalJXMsgRspnSchemaXsdSpec();
                            ReadOnlyObjectWrapper<String> observable = new ReadOnlyObjectWrapper<String>();
                            observable.setValue(value);
                            return (observable);
                        }
                    }
                });
        tableColumnJXMsgRspnSchemaXsdSpec.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, String>, TableCell<ICFBamSchemaDefObj, String>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, String> call(TableColumn<ICFBamSchemaDefObj, String> arg) {
                        return new CFTextTableCell<ICFBamSchemaDefObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnJXMsgRspnSchemaXsdSpec);
        tableColumnLookupDefaultLicense = new TableColumn<ICFBamSchemaDefObj, ICFInternetLicenseObj>(
                "Default License");
        tableColumnLookupDefaultLicense.setCellValueFactory(
                new Callback<CellDataFeatures<ICFBamSchemaDefObj, ICFInternetLicenseObj>, ObservableValue<ICFInternetLicenseObj>>() {
                    public ObservableValue<ICFInternetLicenseObj> call(
                            CellDataFeatures<ICFBamSchemaDefObj, ICFInternetLicenseObj> p) {
                        ICFBamSchemaDefObj obj = p.getValue();
                        if (obj == null) {
                            return (null);
                        } else {
                            ICFInternetLicenseObj ref = obj.getOptionalLookupDefaultLicense();
                            ReadOnlyObjectWrapper<ICFInternetLicenseObj> observable = new ReadOnlyObjectWrapper<ICFInternetLicenseObj>();
                            observable.setValue(ref);
                            return (observable);
                        }
                    }
                });
        tableColumnLookupDefaultLicense.setCellFactory(
                new Callback<TableColumn<ICFBamSchemaDefObj, ICFInternetLicenseObj>, TableCell<ICFBamSchemaDefObj, ICFInternetLicenseObj>>() {
                    @Override
                    public TableCell<ICFBamSchemaDefObj, ICFInternetLicenseObj> call(
                            TableColumn<ICFBamSchemaDefObj, ICFInternetLicenseObj> arg) {
                        return new CFReferenceTableCell<ICFBamSchemaDefObj, ICFInternetLicenseObj>();
                    }
                });
        dataTable.getColumns().add(tableColumnLookupDefaultLicense);
        dataTable.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<ICFBamSchemaDefObj>() {
            @Override
            public void changed(ObservableValue<? extends ICFBamSchemaDefObj> observable,
                    ICFBamSchemaDefObj oldValue, ICFBamSchemaDefObj newValue) {
                setJavaFXFocus(newValue);
                if (buttonChooseSelected != null) {
                    if (newValue != null) {
                        buttonChooseSelected.setDisable(false);
                    } else {
                        buttonChooseSelected.setDisable(true);
                    }
                }
            }
        });
        hboxMenu = new CFHBox(10);
        buttonCancel = new CFButton();
        buttonCancel.setMinWidth(200);
        buttonCancel.setText("Cancel");
        buttonCancel.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                final String S_ProcName = "handle";
                try {
                    cfFormManager.closeCurrentForm();
                } catch (Throwable t) {
                    CFConsole.formException(S_FormName, ((CFButton) e.getSource()).getText(), t);
                }
            }
        });
        hboxMenu.getChildren().add(buttonCancel);
        buttonChooseNone = new CFButton();
        buttonChooseNone.setMinWidth(200);
        buttonChooseNone.setText("ChooseNone");
        buttonChooseNone.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                final String S_ProcName = "handle";
                try {
                    ICFBamSchemaObj schemaObj = (ICFBamSchemaObj) javafxSchema.getSchema();
                    if (schemaObj == null) {
                        throw CFLib.getDefaultExceptionFactory().newNullArgumentException(getClass(), S_ProcName, 0,
                                "schemaObj");
                    }
                    invokeWhenChosen.choseSchemaDef(null);
                    cfFormManager.closeCurrentForm();
                } catch (Throwable t) {
                    CFConsole.formException(S_FormName, ((CFButton) e.getSource()).getText(), t);
                }
            }
        });
        hboxMenu.getChildren().add(buttonChooseNone);
        buttonChooseSelected = new CFButton();
        buttonChooseSelected.setMinWidth(200);
        buttonChooseSelected.setText("ChooseSelected");
        buttonChooseSelected.setOnAction(new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent e) {
                final String S_ProcName = "handle";
                try {
                    ICFBamSchemaObj schemaObj = (ICFBamSchemaObj) javafxSchema.getSchema();
                    if (schemaObj == null) {
                        throw CFLib.getDefaultExceptionFactory().newNullArgumentException(getClass(), S_ProcName, 0,
                                "schemaObj");
                    }
                    ICFBamSchemaDefObj selectedInstance = getJavaFXFocusAsSchemaDef();
                    invokeWhenChosen.choseSchemaDef(selectedInstance);
                    cfFormManager.closeCurrentForm();
                } catch (Throwable t) {
                    CFConsole.formException(S_FormName, ((CFButton) e.getSource()).getText(), t);
                }
            }
        });
        hboxMenu.getChildren().add(buttonChooseSelected);
        if (argFocus != null) {
            dataTable.getSelectionModel().select(argFocus);
        }
        setTop(hboxMenu);
        setCenter(dataTable);
    }

    public ICFFormManager getCFFormManager() {
        return (cfFormManager);
    }

    public void setCFFormManager(ICFFormManager value) {
        final String S_ProcName = "setCFFormManager";
        if (value == null) {
            throw CFLib.getDefaultExceptionFactory().newNullArgumentException(getClass(), S_ProcName, 1, "value");
        }
        cfFormManager = value;
    }

    public ICFBamJavaFXSchema getJavaFXSchema() {
        return (javafxSchema);
    }

    public void setJavaFXFocus(ICFLibAnyObj value) {
        final String S_ProcName = "setJavaFXFocus";
        if ((value == null) || (value instanceof ICFBamSchemaDefObj)) {
            super.setJavaFXFocus(value);
        } else {
            throw CFLib.getDefaultExceptionFactory().newUnsupportedClassException(getClass(), S_ProcName, "value",
                    value, "ICFBamSchemaDefObj");
        }
        if (dataTable == null) {
            return;
        }
    }

    public ICFBamSchemaDefObj getJavaFXFocusAsSchemaDef() {
        return ((ICFBamSchemaDefObj) getJavaFXFocus());
    }

    public void setJavaFXFocusAsSchemaDef(ICFBamSchemaDefObj value) {
        setJavaFXFocus(value);
    }

    public class SchemaDefByQualNameComparator implements Comparator<ICFBamSchemaDefObj> {
        public SchemaDefByQualNameComparator() {
        }

        public int compare(ICFBamSchemaDefObj lhs, ICFBamSchemaDefObj rhs) {
            if (lhs == null) {
                if (rhs == null) {
                    return (0);
                } else {
                    return (-1);
                }
            } else if (rhs == null) {
                return (1);
            } else {
                String lhsValue = lhs.getObjQualifiedName();
                String rhsValue = rhs.getObjQualifiedName();
                if (lhsValue == null) {
                    if (rhsValue == null) {
                        return (0);
                    } else {
                        return (-1);
                    }
                } else if (rhsValue == null) {
                    return (1);
                } else {
                    return (lhsValue.compareTo(rhsValue));
                }
            }
        }
    }

    protected SchemaDefByQualNameComparator compareSchemaDefByQualName = new SchemaDefByQualNameComparator();

    public Collection<ICFBamSchemaDefObj> getJavaFXDataCollection() {
        return (javafxDataCollection);
    }

    public void setJavaFXDataCollection(Collection<ICFBamSchemaDefObj> value) {
        final String S_ProcName = "setJavaFXDataCollection";
        javafxDataCollection = value;
        observableListOfSchemaDef = null;
        if (javafxDataCollection != null) {
            observableListOfSchemaDef = FXCollections.observableArrayList(javafxDataCollection);
            observableListOfSchemaDef.sort(compareSchemaDefByQualName);
        } else {
            observableListOfSchemaDef = FXCollections.observableArrayList();
        }
        if (dataTable != null) {
            dataTable.setItems(observableListOfSchemaDef);
            // Hack from stackoverflow to fix JavaFX TableView refresh issue
            ((TableColumn) dataTable.getColumns().get(0)).setVisible(false);
            ((TableColumn) dataTable.getColumns().get(0)).setVisible(true);
        }
    }

    public ICFInternetDomainBaseObj getJavaFXContainer() {
        return (javafxContainer);
    }

    public void setJavaFXContainer(ICFInternetDomainBaseObj value) {
        javafxContainer = value;
    }
}