Main Page | Packages | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

org.objectweb.cjdbc.console.wizard.WizardTabs Class Reference

List of all members.

Public Member Functions

WizardTab addTab (WizardTab tab)
void setTabEnabled (String tab, boolean enabled)
ArrayList getUsers ()
ArrayList getBackends ()
boolean isDistributedDatabase ()
void backendListChanged ()
void distributionChanged ()
void usersChanged ()
void importDocumentFromXml (Document doc)
Document exportDocumentToXml ()

Detailed Description

This is a JTabbedPane used to contain all the tabs define in the org.objectweb.cjdbc.console.wizard.tab package.

Author:
Nicolas Modrzyk
Version:
1.0

Definition at line 63 of file WizardTabs.java.


Member Function Documentation

void org.objectweb.cjdbc.console.wizard.WizardTabs.backendListChanged  ) 
 

See also:
org.objectweb.cjdbc.console.wizard.listeners.WizardListener#backendListChanged()

Definition at line 148 of file WizardTabs.java.

References org.objectweb.cjdbc.console.wizard.WizardTab.backendListChanged().

Referenced by org.objectweb.cjdbc.console.wizard.tab.BackendTab.actionPerformed().

00149   {
00150     for (int i = 0; i < tabs.size(); i++)
00151       ((WizardListener) tabs.get(i)).backendListChanged();
00152   }

void org.objectweb.cjdbc.console.wizard.WizardTabs.distributionChanged  ) 
 

See also:
org.objectweb.cjdbc.console.wizard.listeners.WizardListener#distributionChanged()

Definition at line 157 of file WizardTabs.java.

References org.objectweb.cjdbc.console.wizard.WizardTab.distributionChanged().

Referenced by org.objectweb.cjdbc.console.wizard.tab.VirtualDatabaseTab.itemStateChanged().

00158   {
00159     setTabEnabled(WizardConstants.TAB_DISTRIBUTION, isDistributedDatabase());
00160 
00161     for (int i = 0; i < tabs.size(); i++)
00162       ((WizardListener) tabs.get(i)).distributionChanged();
00163   }

Document org.objectweb.cjdbc.console.wizard.WizardTabs.exportDocumentToXml  ) 
 

This will export the content of all the wizard fields to a dom4j Document

Returns:
a dom4j Document

Definition at line 512 of file WizardTabs.java.

References org.objectweb.cjdbc.console.wizard.objects.Backend.getConnectionManagers(), org.objectweb.cjdbc.console.wizard.objects.Backend.getConnectionTestStatement(), org.objectweb.cjdbc.console.wizard.objects.ConnectionInfo.getConnectionTypeInfo(), org.objectweb.cjdbc.console.wizard.objects.Backend.getDriver(), org.objectweb.cjdbc.console.wizard.objects.Backend.getDriverPath(), org.objectweb.cjdbc.console.wizard.objects.Backend.getDynamicPrecision(), org.objectweb.cjdbc.console.wizard.objects.Backend.getGatherSystemTables(), org.objectweb.cjdbc.console.wizard.objects.Backend.getName(), org.objectweb.cjdbc.console.wizard.objects.User.getPassword(), org.objectweb.cjdbc.console.wizard.objects.ConnectionInfo.getRLogin(), org.objectweb.cjdbc.console.wizard.objects.ConnectionInfo.getRPassword(), org.objectweb.cjdbc.console.wizard.objects.ConnectionTypeInfo.getType(), org.objectweb.cjdbc.console.wizard.objects.Backend.getUrl(), org.objectweb.cjdbc.console.wizard.objects.ConnectionInfo.getUrlParameters(), org.objectweb.cjdbc.console.wizard.objects.User.getUsername(), and org.objectweb.cjdbc.console.wizard.objects.ConnectionTypeInfo.getValue().

Referenced by org.objectweb.cjdbc.console.wizard.XmlWizard.exportDocument().

00513   {
00514 
00515     //    DocumentType doctype = DocumentFactory.getInstance()
00516     //        .createDocType(
00517     //            DatabasesXmlTags.ELT_CJDBC,
00518     //            "-//ObjectWeb//DTD C-JDBC " + Constants.VERSION + "//EN",
00519     //            "http://c-jdbc.objectweb.org/dtds/c-jdbc-" + Constants.VERSION
00520     //                + ".dtd");
00521     DocumentType doctype = DocumentFactory.getInstance().createDocType(
00522         DatabasesXmlTags.ELT_CJDBC, "-//ObjectWeb//DTD C-JDBC 1.1//EN",
00523         "http://c-jdbc.objectweb.org/dtds/c-jdbc-1.1.dtd");
00524     Document document = DocumentFactory.getInstance().createDocument();
00525     document.setDocType(doctype);
00526     Element root = document.addElement(DatabasesXmlTags.ELT_CJDBC);
00527 
00528     ///////////////////////////////////////////////////////////////////////////
00529     // Virtual Database attributes
00530     ///////////////////////////////////////////////////////////////////////////
00531 
00532     Element virtualDatabase = root
00533         .addElement(DatabasesXmlTags.ELT_VirtualDatabase);
00534     virtualDatabase.addAttribute(DatabasesXmlTags.ATT_name,
00535         virtualDatabaseTab.vdbName.getText());
00536     virtualDatabase.addAttribute(DatabasesXmlTags.ATT_maxNbOfConnections, ""
00537         + virtualDatabaseTab.maxNbOfConnections.getValue());
00538     virtualDatabase.addAttribute(DatabasesXmlTags.ATT_poolThreads, ""
00539         + (virtualDatabaseTab.pool.getSelectedObjects() != null));
00540     virtualDatabase.addAttribute(DatabasesXmlTags.ATT_minNbOfThreads, ""
00541         + virtualDatabaseTab.minNbOfThreads.getValue());
00542     virtualDatabase.addAttribute(DatabasesXmlTags.ATT_maxNbOfThreads, ""
00543         + virtualDatabaseTab.maxNbOfThreads.getValue());
00544     virtualDatabase.addAttribute(DatabasesXmlTags.ATT_maxThreadIdleTime, ""
00545         + virtualDatabaseTab.maxThreadIdleTime.getValue());
00546     virtualDatabase.addAttribute(DatabasesXmlTags.ATT_sqlDumpLength, ""
00547         + virtualDatabaseTab.sqlDumpLength.getValue());
00548     virtualDatabase.addAttribute(DatabasesXmlTags.ATT_blobEncodingMethod, ""
00549         + virtualDatabaseTab.blob.getSelectedItem());
00550 
00551     ///////////////////////////////////////////////////////////////////////////
00552     // Virtual Database distribution
00553     ///////////////////////////////////////////////////////////////////////////
00554     if (isDistributedDatabase())
00555     {
00556       Element Distribution = virtualDatabase
00557           .addElement(DatabasesXmlTags.ELT_Distribution);
00558       Distribution.addAttribute(DatabasesXmlTags.ATT_groupName,
00559           distributionTab.groupName.getText());
00560       Distribution.addAttribute(DatabasesXmlTags.ATT_macroClock,
00561           distributionTab.macroClock.getSelectedItem().toString());
00562       Distribution.addAttribute(DatabasesXmlTags.ATT_castTimeout, ""
00563           + distributionTab.castTimeout.getValue());
00564     }
00565 
00566     ///////////////////////////////////////////////////////////////////////////
00567     // authentication
00568     ///////////////////////////////////////////////////////////////////////////
00569     Element authentication = virtualDatabase
00570         .addElement(DatabasesXmlTags.ELT_AuthenticationManager);
00571     Element admin = authentication.addElement(DatabasesXmlTags.ELT_Admin);
00572     JComboBox adminBox = authenticationTab.admin.getUsersCombo();
00573     int count = adminBox.getItemCount();
00574     for (int i = 0; i < count; i++)
00575     {
00576       User user = (User) adminBox.getItemAt(i);
00577       admin.addElement(DatabasesXmlTags.ELT_User).addAttribute(
00578           DatabasesXmlTags.ATT_username, user.getUsername()).addAttribute(
00579           DatabasesXmlTags.ATT_password, user.getPassword());
00580     }
00581 
00582     Element users = authentication
00583         .addElement(DatabasesXmlTags.ELT_VirtualUsers);
00584     JComboBox virtualBox = authenticationTab.users.getUsersCombo();
00585     count = virtualBox.getItemCount();
00586     for (int i = 0; i < count; i++)
00587     {
00588       User user = (User) virtualBox.getItemAt(i);
00589       users.addElement(DatabasesXmlTags.ELT_VirtualLogin).addAttribute(
00590           DatabasesXmlTags.ATT_vLogin, user.getUsername()).addAttribute(
00591           DatabasesXmlTags.ATT_vPassword, user.getPassword());
00592     }
00593 
00594     ///////////////////////////////////////////////////////////////////////////
00595     // backends
00596     ///////////////////////////////////////////////////////////////////////////
00597     JComboBox backends = backendsTab.backendsCombo;
00598     int backcount = backends.getItemCount();
00599     for (int i = 0; i < backcount; i++)
00600     {
00601       Backend backend = (Backend) backends.getItemAt(i);
00602       Element backende = virtualDatabase
00603           .addElement(DatabasesXmlTags.ELT_DatabaseBackend);
00604       backende.addAttribute(DatabasesXmlTags.ATT_name, backend.getName());
00605       backende.addAttribute(DatabasesXmlTags.ATT_driver, backend.getDriver());
00606       backende.addAttribute(DatabasesXmlTags.ATT_driverPath, backend
00607           .getDriverPath());
00608       backende.addAttribute(DatabasesXmlTags.ATT_url, backend.getUrl());
00609       backende.addAttribute(DatabasesXmlTags.ATT_connectionTestStatement,
00610           backend.getConnectionTestStatement());
00611 
00612       Element schema = backende.addElement(DatabasesXmlTags.ELT_DatabaseSchema);
00613       schema.addAttribute(DatabasesXmlTags.ATT_dynamicPrecision, backend
00614           .getDynamicPrecision());
00615       if (Boolean.valueOf(backend.getGatherSystemTables()).booleanValue())
00616         schema.addAttribute(DatabasesXmlTags.ATT_gatherSystemTables, backend
00617             .getGatherSystemTables());
00618 
00619       ///////////////////////////////////////////////////////////////////////////
00620       // Connection managers
00621       ///////////////////////////////////////////////////////////////////////////
00622       Hashtable managers = backend.getConnectionManagers();
00623       Enumeration keys = managers.keys();
00624       while (keys.hasMoreElements())
00625       {
00626         User user = (User) keys.nextElement();
00627         ConnectionInfo info = (ConnectionInfo) managers.get(user);
00628         Element connection = backende
00629             .addElement(DatabasesXmlTags.ELT_ConnectionManager);
00630         connection
00631             .addAttribute(DatabasesXmlTags.ATT_vLogin, user.getUsername());
00632         connection.addAttribute(DatabasesXmlTags.ATT_rLogin, info.getRLogin());
00633         connection.addAttribute(DatabasesXmlTags.ATT_rPassword, info
00634             .getRPassword());
00635         connection.addAttribute(DatabasesXmlTags.ATT_urlParameters, info
00636             .getUrlParameters());
00637         ConnectionTypeInfo cti = info.getConnectionTypeInfo();
00638 
00639         String type = cti.getType();
00640         if (type == WizardConstants.CONNECTION_MANAGERS[0])
00641           connection.addElement(DatabasesXmlTags.ELT_SimpleConnectionManager);
00642         else if (type == WizardConstants.CONNECTION_MANAGERS[1])
00643         {
00644           Element manager = connection
00645               .addElement(DatabasesXmlTags.ELT_FailFastPoolConnectionManager);
00646           manager.addAttribute(DatabasesXmlTags.ATT_poolSize, ""
00647               + cti.getValue(0));
00648         }
00649         else if (type == WizardConstants.CONNECTION_MANAGERS[2])
00650         {
00651           Element manager = connection
00652               .addElement(DatabasesXmlTags.ELT_RandomWaitPoolConnectionManager);
00653           manager.addAttribute(DatabasesXmlTags.ATT_poolSize, ""
00654               + cti.getValue(0));
00655           manager.addAttribute(DatabasesXmlTags.ATT_timeout, ""
00656               + cti.getValue(1));
00657         }
00658         else if (type == WizardConstants.CONNECTION_MANAGERS[3])
00659         {
00660           Element manager = connection
00661               .addElement(DatabasesXmlTags.ELT_VariablePoolConnectionManager);
00662           manager.addAttribute(DatabasesXmlTags.ATT_initPoolSize, ""
00663               + cti.getValue(0));
00664           manager.addAttribute(DatabasesXmlTags.ATT_minPoolSize, ""
00665               + cti.getValue(1));
00666           manager.addAttribute(DatabasesXmlTags.ATT_maxPoolSize, ""
00667               + cti.getValue(2));
00668           manager.addAttribute(DatabasesXmlTags.ATT_idleTimeout, ""
00669               + cti.getValue(3));
00670           manager.addAttribute(DatabasesXmlTags.ATT_waitTimeout, ""
00671               + cti.getValue(4));
00672         }
00673       }
00674     }
00675 
00676     ///////////////////////////////////////////////////////////////////////////
00677     // Request manager
00678     ///////////////////////////////////////////////////////////////////////////
00679     Element requestManager = virtualDatabase
00680         .addElement(DatabasesXmlTags.ELT_RequestManager);
00681 
00682     requestManager.addAttribute(DatabasesXmlTags.ATT_caseSensitiveParsing,
00683         Boolean.toString(requestManagerTab.caseSensitiveParsing
00684             .getSelectedObjects() != null));
00685     requestManager.addAttribute(DatabasesXmlTags.ATT_beginTimeout,
00686         requestManagerTab.beginTimeout.getValue() + "");
00687     requestManager.addAttribute(DatabasesXmlTags.ATT_commitTimeout,
00688         requestManagerTab.commitTimeout.getValue() + "");
00689     requestManager.addAttribute(DatabasesXmlTags.ATT_rollbackTimeout,
00690         requestManagerTab.rollbackTimeout.getValue() + "");
00691 
00692     ///////////////////////////////////////////////////////////////////////////
00693     // Scheduler
00694     ///////////////////////////////////////////////////////////////////////////
00695     Element scheduler = requestManager
00696         .addElement(DatabasesXmlTags.ELT_RequestScheduler);
00697     int ischeduler = requestManagerTab.scheduler.getSelectedIndex();
00698     String level = (String) requestManagerTab.schedulerLevel.getSelectedItem();
00699     switch (ischeduler)
00700     {
00701       case 0 :
00702         scheduler.addElement(DatabasesXmlTags.ELT_SingleDBScheduler)
00703             .addAttribute(DatabasesXmlTags.ATT_level, level);
00704         break;
00705       case 1 :
00706         scheduler.addElement(DatabasesXmlTags.ELT_RAIDb0Scheduler)
00707             .addAttribute(DatabasesXmlTags.ATT_level, level);
00708         break;
00709       case 2 :
00710         scheduler.addElement(DatabasesXmlTags.ELT_RAIDb1Scheduler)
00711             .addAttribute(DatabasesXmlTags.ATT_level, level);
00712         break;
00713       case 3 :
00714         scheduler.addElement(DatabasesXmlTags.ELT_RAIDb2Scheduler)
00715             .addAttribute(DatabasesXmlTags.ATT_level, level);
00716         break;
00717       default :
00718         break;
00719     }
00720 
00721     ///////////////////////////////////////////////////////////////////////////
00722     // Cache
00723     ///////////////////////////////////////////////////////////////////////////
00724     if (requestManagerTab.usecaching.getSelectedObjects() != null)
00725     {
00726       Element cache = requestManager
00727           .addElement(DatabasesXmlTags.ELT_RequestCache);
00728       if (cachingTab.metadataenable.getSelectedObjects() != null)
00729       {
00730         Element metadata = cache.addElement(DatabasesXmlTags.ELT_MetadataCache);
00731         metadata.addAttribute(DatabasesXmlTags.ATT_maxNbOfMetadata, ""
00732             + cachingTab.maxNbOfMetadata.getValue());
00733         metadata.addAttribute(DatabasesXmlTags.ATT_maxNbOfField, ""
00734             + cachingTab.maxNbOfField.getValue());
00735       }
00736       if (cachingTab.parsingenable.getSelectedObjects() != null)
00737       {
00738         Element parsing = cache.addElement(DatabasesXmlTags.ELT_ParsingCache);
00739         parsing
00740             .addAttribute(DatabasesXmlTags.ATT_backgroundParsing,
00741                 Boolean.toString(cachingTab.backgroundParsing
00742                     .getSelectedObjects() != null));
00743         parsing.addAttribute(DatabasesXmlTags.ATT_maxNbOfEntries, ""
00744             + cachingTab.maxNbOfEntries.getValue());
00745       }
00746       if (cachingTab.resultenable.getSelectedObjects() != null)
00747       {
00748         Element result = cache.addElement(DatabasesXmlTags.ELT_ResultCache);
00749         result.addAttribute(DatabasesXmlTags.ATT_granularity, ""
00750             + cachingTab.granularity.getSelectedItem());
00751         result.addAttribute(DatabasesXmlTags.ATT_maxNbOfEntries, ""
00752             + cachingTab.resultMaxNbOfEntries.getValue());
00753         result.addAttribute(DatabasesXmlTags.ATT_pendingTimeout, ""
00754             + cachingTab.pendingTimeout.getValue());
00755         result.addComment(WizardTranslate.get("not.supported.caching.rules"));
00756       }
00757     }
00758 
00759     ///////////////////////////////////////////////////////////////////////////
00760     // Loadbalancer
00761     ///////////////////////////////////////////////////////////////////////////
00762     Element loadbalancer = requestManager
00763         .addElement(DatabasesXmlTags.ELT_LoadBalancer);
00764     String loadElement = (String) requestManagerTab.loadbalancer
00765         .getSelectedItem();
00766 
00767     Element currentLoadbalancer = loadbalancer;
00768 
00769     if (loadElement.startsWith(DatabasesXmlTags.ELT_RAIDb_0))
00770       currentLoadbalancer = loadbalancer
00771           .addElement(DatabasesXmlTags.ELT_RAIDb_0);
00772     if (loadElement.startsWith(DatabasesXmlTags.ELT_RAIDb_1))
00773     {
00774       currentLoadbalancer = loadbalancer
00775           .addElement(DatabasesXmlTags.ELT_RAIDb_1);
00776       currentLoadbalancer.addElement(DatabasesXmlTags.ELT_WaitForCompletion)
00777           .addAttribute(DatabasesXmlTags.ATT_policy,
00778               (String) requestManagerTab.wait4completion.getSelectedItem());
00779     }
00780     if (loadElement.startsWith(DatabasesXmlTags.ELT_RAIDb_2))
00781     {
00782       currentLoadbalancer = loadbalancer
00783           .addElement(DatabasesXmlTags.ELT_RAIDb_2);
00784       currentLoadbalancer.addElement(DatabasesXmlTags.ELT_WaitForCompletion)
00785           .addAttribute(DatabasesXmlTags.ATT_policy,
00786               (String) requestManagerTab.wait4completion.getSelectedItem());
00787     }
00788     if (loadElement.startsWith(DatabasesXmlTags.ELT_ParallelDB))
00789       currentLoadbalancer = loadbalancer
00790           .addElement(DatabasesXmlTags.ELT_ParallelDB);
00791 
00792     currentLoadbalancer.addElement(loadElement);
00793     currentLoadbalancer.addComment(WizardTranslate
00794         .get("not.supported.macro.handling"));
00795     currentLoadbalancer.addComment(WizardTranslate
00796         .get("not.supported.create.policy"));
00797 
00798     ///////////////////////////////////////////////////////////////////////////
00799     // Recovery
00800     ///////////////////////////////////////////////////////////////////////////
00801     if (requestManagerTab.userecoverylog.getSelectedObjects() != null)
00802     {
00803       Element recovery = requestManager
00804           .addElement(DatabasesXmlTags.ELT_RecoveryLog);
00805       Element jdbc = recovery.addElement(DatabasesXmlTags.ELT_JDBCRecoveryLog);
00806       jdbc.addAttribute(DatabasesXmlTags.ATT_driver, recoveryTab.driver
00807           .getText());
00808       jdbc.addAttribute(DatabasesXmlTags.ATT_driverPath, recoveryTab.driverPath
00809           .getText());
00810       jdbc.addAttribute(DatabasesXmlTags.ATT_url, recoveryTab.url.getText());
00811       jdbc
00812           .addAttribute(DatabasesXmlTags.ATT_login, recoveryTab.login.getText());
00813       jdbc.addAttribute(DatabasesXmlTags.ATT_password, recoveryTab.password
00814           .getText());
00815       jdbc.addAttribute(DatabasesXmlTags.ATT_requestTimeout, ""
00816           + recoveryTab.requestTimeout.getValue());
00817 
00818       jdbc.addElement(DatabasesXmlTags.ELT_RecoveryLogTable);
00819       jdbc.addElement(DatabasesXmlTags.ELT_CheckpointTable);
00820       jdbc.addElement(DatabasesXmlTags.ELT_BackendTable);
00821     }
00822 
00823     return document;
00824   }

void org.objectweb.cjdbc.console.wizard.WizardTabs.importDocumentFromXml Document  doc  ) 
 

Import a Document and set the gui so that all the fields are filled with information from that document. This will reset all the values already filled in.

Parameters:
doc a document parsed with the dom4j api.

Definition at line 181 of file WizardTabs.java.

References org.objectweb.cjdbc.console.wizard.objects.Backend.setConnectionManagers(), org.objectweb.cjdbc.console.wizard.objects.Backend.setConnectionTestStatement(), org.objectweb.cjdbc.console.wizard.objects.ConnectionInfo.setConnectionTypeInfo(), org.objectweb.cjdbc.console.wizard.objects.Backend.setDriver(), org.objectweb.cjdbc.console.wizard.objects.Backend.setDriverPath(), org.objectweb.cjdbc.console.wizard.objects.Backend.setDynamicPrecision(), org.objectweb.cjdbc.console.wizard.objects.Backend.setGatherSystemTables(), org.objectweb.cjdbc.console.wizard.objects.Backend.setName(), org.objectweb.cjdbc.console.wizard.objects.User.setPassword(), org.objectweb.cjdbc.console.wizard.objects.ConnectionInfo.setRLogin(), org.objectweb.cjdbc.console.wizard.objects.ConnectionInfo.setRPassword(), org.objectweb.cjdbc.console.wizard.objects.ConnectionTypeInfo.setType(), org.objectweb.cjdbc.console.wizard.objects.Backend.setUrl(), org.objectweb.cjdbc.console.wizard.objects.ConnectionInfo.setUrlParameters(), org.objectweb.cjdbc.console.wizard.objects.User.setUsername(), and org.objectweb.cjdbc.console.wizard.objects.ConnectionTypeInfo.setValues().

Referenced by org.objectweb.cjdbc.console.wizard.XmlWizard.loadDocument().

00182   {
00183     ///////////////////////////////////////////////////////////////////////////
00184     // Virtual Database attributes
00185     ///////////////////////////////////////////////////////////////////////////
00186     Element root = doc.getRootElement();
00187     Node virtualDabase = doc.selectSingleNode("//" + DatabasesXmlTags.ELT_CJDBC
00188         + "/" + DatabasesXmlTags.ELT_VirtualDatabase);
00189     virtualDatabaseTab.vdbName.setText(virtualDabase.valueOf("@"
00190         + DatabasesXmlTags.ATT_name));
00191     virtualDatabaseTab.maxNbOfConnections.setValue(Integer
00192         .parseInt(virtualDabase.valueOf("@"
00193             + DatabasesXmlTags.ATT_maxNbOfConnections)));
00194 
00195     String pool = virtualDabase.valueOf("@" + DatabasesXmlTags.ATT_poolThreads);
00196     if (!Boolean.valueOf(pool).booleanValue())
00197       virtualDatabaseTab.pool.doClick();
00198     virtualDatabaseTab.minNbOfThreads.setValue(Integer.parseInt(virtualDabase
00199         .valueOf("@" + DatabasesXmlTags.ATT_minNbOfThreads)));
00200     virtualDatabaseTab.maxNbOfThreads.setValue(Integer.parseInt(virtualDabase
00201         .valueOf("@" + DatabasesXmlTags.ATT_maxNbOfThreads)));
00202     virtualDatabaseTab.maxThreadIdleTime.setValue(Integer
00203         .parseInt(virtualDabase.valueOf("@"
00204             + DatabasesXmlTags.ATT_maxThreadIdleTime)));
00205     virtualDatabaseTab.sqlDumpLength.setValue(Integer.parseInt(virtualDabase
00206         .valueOf("@" + DatabasesXmlTags.ATT_sqlDumpLength)));
00207     virtualDatabaseTab.blob.setSelectedItem((virtualDabase.valueOf("@"
00208         + DatabasesXmlTags.ATT_blobEncodingMethod)));
00209 
00210     ///////////////////////////////////////////////////////////////////////////
00211     // Virtual Database distribution
00212     ///////////////////////////////////////////////////////////////////////////
00213     Node distribution = virtualDabase
00214         .selectSingleNode(DatabasesXmlTags.ELT_Distribution);
00215     if (distribution != null)
00216     {
00217       virtualDatabaseTab.distributed.doClick();
00218       distributionTab.groupName.setText(distribution.valueOf("@"
00219           + DatabasesXmlTags.ATT_groupName));
00220       distributionTab.macroClock.setSelectedItem(distribution.valueOf("@"
00221           + DatabasesXmlTags.ATT_macroClock));
00222       distributionTab.castTimeout.setValue(Integer.parseInt(distribution
00223           .valueOf("@" + DatabasesXmlTags.ATT_castTimeout)));
00224     }
00225 
00226     ///////////////////////////////////////////////////////////////////////////
00227     // authentication
00228     ///////////////////////////////////////////////////////////////////////////
00229     Node authentication = virtualDabase
00230         .selectSingleNode(DatabasesXmlTags.ELT_AuthenticationManager);
00231     Node userNode;
00232     User user;
00233     Iterator iter;
00234 
00235     List admins = authentication.selectNodes(DatabasesXmlTags.ELT_Admin + "/"
00236         + DatabasesXmlTags.ELT_User);
00237     iter = admins.iterator();
00238     while (iter.hasNext())
00239     {
00240       userNode = (Node) iter.next();
00241       user = new User();
00242       user.setUsername(userNode.valueOf("@" + DatabasesXmlTags.ATT_username));
00243       user.setPassword(userNode.valueOf("@" + DatabasesXmlTags.ATT_password));
00244       authenticationTab.admin.getUsersCombo().addItem(user);
00245     }
00246 
00247     List users = authentication.selectNodes(DatabasesXmlTags.ELT_VirtualUsers
00248         + "/" + DatabasesXmlTags.ELT_VirtualLogin);
00249     iter = users.iterator();
00250     while (iter.hasNext())
00251     {
00252       userNode = (Node) iter.next();
00253       user = new User();
00254       user.setUsername(userNode.valueOf("@" + DatabasesXmlTags.ATT_vLogin));
00255       user.setPassword(userNode.valueOf("@" + DatabasesXmlTags.ATT_vPassword));
00256       authenticationTab.users.getUsersCombo().addItem(user);
00257     }
00258     this.usersChanged();
00259 
00260     ///////////////////////////////////////////////////////////////////////////
00261     // backends
00262     ///////////////////////////////////////////////////////////////////////////
00263     List backends = virtualDabase
00264         .selectNodes(DatabasesXmlTags.ELT_DatabaseBackend);
00265     iter = backends.iterator();
00266     JComboBox backendsCombo = backendsTab.backendsCombo;
00267     Node backendNode;
00268     Node schemaNode;
00269     while (iter.hasNext())
00270     {
00271       backendNode = (Node) iter.next();
00272       schemaNode = backendNode
00273           .selectSingleNode(DatabasesXmlTags.ELT_DatabaseSchema);
00274       Backend backend = new Backend();
00275       backend.setName(backendNode.valueOf("@" + DatabasesXmlTags.ATT_name));
00276       backend.setDriver(backendNode.valueOf("@" + DatabasesXmlTags.ATT_driver));
00277       backend.setDriverPath(backendNode.valueOf("@"
00278           + DatabasesXmlTags.ATT_driverPath));
00279       backend.setUrl(backendNode.valueOf("@" + DatabasesXmlTags.ATT_url));
00280       backend.setConnectionTestStatement(backendNode.valueOf("@"
00281           + DatabasesXmlTags.ATT_connectionTestStatement));
00282       if (schemaNode != null)
00283       {
00284         backend.setGatherSystemTables(schemaNode.valueOf("@"
00285             + DatabasesXmlTags.ATT_gatherSystemTables));
00286         backend.setDynamicPrecision(schemaNode.valueOf("@"
00287             + DatabasesXmlTags.ATT_dynamicPrecision));
00288       }
00289       ///////////////////////////////////////////////////////////////////////////
00290       // Connection managers
00291       ///////////////////////////////////////////////////////////////////////////
00292       Hashtable managers = new Hashtable();
00293       backend.setConnectionManagers(managers);
00294       List connectionManagers = backendNode
00295           .selectNodes(DatabasesXmlTags.ELT_ConnectionManager);
00296       Iterator iterator = connectionManagers.iterator();
00297       while (iterator.hasNext())
00298       {
00299         Node connect = (Node) iterator.next();
00300         User user2 = getUser(connect.valueOf("@" + DatabasesXmlTags.ATT_vLogin));
00301         if (user2 != null)
00302         {
00303           ConnectionInfo info = new ConnectionInfo();
00304           info.setRLogin(connect.valueOf("@" + DatabasesXmlTags.ATT_rLogin));
00305           info.setRPassword(connect.valueOf("@"
00306               + DatabasesXmlTags.ATT_rPassword));
00307           info.setUrlParameters(connect.valueOf("@"
00308               + DatabasesXmlTags.ATT_urlParameters));
00309           ConnectionTypeInfo cti = new ConnectionTypeInfo();
00310           ArrayList values = new ArrayList();
00311 
00312           Node simple = connect
00313               .selectSingleNode(DatabasesXmlTags.ELT_SimpleConnectionManager);
00314           if (simple != null)
00315           {
00316             cti.setType(WizardConstants.CONNECTION_MANAGERS[0]);
00317           }
00318           Node failfast = connect
00319               .selectSingleNode(DatabasesXmlTags.ELT_FailFastPoolConnectionManager);
00320           if (failfast != null)
00321           {
00322             cti.setType(WizardConstants.CONNECTION_MANAGERS[1]);
00323             values.add(failfast.valueOf("@" + DatabasesXmlTags.ATT_poolSize));
00324           }
00325           Node random = connect
00326               .selectSingleNode(DatabasesXmlTags.ELT_RandomWaitPoolConnectionManager);
00327           if (random != null)
00328           {
00329             cti.setType(WizardConstants.CONNECTION_MANAGERS[2]);
00330             values.add(random.valueOf("@" + DatabasesXmlTags.ATT_poolSize));
00331             values.add(random.valueOf("@" + DatabasesXmlTags.ATT_timeout));
00332           }
00333           Node variable = connect
00334               .selectSingleNode(DatabasesXmlTags.ELT_VariablePoolConnectionManager);
00335           if (variable != null)
00336           {
00337             cti.setType(WizardConstants.CONNECTION_MANAGERS[3]);
00338             values.add(variable
00339                 .valueOf("@" + DatabasesXmlTags.ATT_initPoolSize));
00340             values
00341                 .add(variable.valueOf("@" + DatabasesXmlTags.ATT_minPoolSize));
00342             values
00343                 .add(variable.valueOf("@" + DatabasesXmlTags.ATT_maxPoolSize));
00344             values
00345                 .add(variable.valueOf("@" + DatabasesXmlTags.ATT_idleTimeout));
00346             values
00347                 .add(variable.valueOf("@" + DatabasesXmlTags.ATT_waitTimeout));
00348           }
00349 
00350           cti.setValues(values);
00351           info.setConnectionTypeInfo(cti);
00352           managers.put(user2, info);
00353         }
00354       }
00355       backendsCombo.addItem(backend);
00356     }
00357     backendsCombo.setSelectedIndex(0);
00358 
00359     ///////////////////////////////////////////////////////////////////////////
00360     // Request manager
00361     ///////////////////////////////////////////////////////////////////////////
00362     Node requestManager = virtualDabase
00363         .selectSingleNode(DatabasesXmlTags.ELT_RequestManager);
00364 
00365     if (requestManager.valueOf("@" + DatabasesXmlTags.ATT_caseSensitiveParsing)
00366         .equals("true"))
00367       requestManagerTab.caseSensitiveParsing.doClick();
00368     requestManagerTab.beginTimeout.setValue(Integer.parseInt(requestManager
00369         .valueOf("@" + DatabasesXmlTags.ATT_beginTimeout)));
00370     requestManagerTab.commitTimeout.setValue(Integer.parseInt(requestManager
00371         .valueOf("@" + DatabasesXmlTags.ATT_commitTimeout)));
00372     requestManagerTab.rollbackTimeout.setValue(Integer.parseInt(requestManager
00373         .valueOf("@" + DatabasesXmlTags.ATT_rollbackTimeout)));
00374 
00375     ///////////////////////////////////////////////////////////////////////////
00376     // Scheduler
00377     ///////////////////////////////////////////////////////////////////////////
00378     Element scheduler = (Element) requestManager
00379         .selectSingleNode(DatabasesXmlTags.ELT_RequestScheduler);
00380     Element schedulerElement = (Element) scheduler.elements().iterator().next();
00381     requestManagerTab.scheduler.setSelectedItem(schedulerElement.getName());
00382     requestManagerTab.schedulerLevel.setSelectedItem(schedulerElement
00383         .valueOf("@" + DatabasesXmlTags.ATT_level));
00384 
00385     ///////////////////////////////////////////////////////////////////////////
00386     // Loadbalancer
00387     ///////////////////////////////////////////////////////////////////////////
00388     Element loadbalancer = (Element) requestManager
00389         .selectSingleNode(DatabasesXmlTags.ELT_LoadBalancer);
00390     Element loadElement = (Element) loadbalancer.elements().iterator().next();
00391     String raidbLoad = loadElement.getName();
00392     if (raidbLoad.startsWith(DatabasesXmlTags.ELT_RAIDb_1)
00393         || raidbLoad.startsWith(DatabasesXmlTags.ELT_RAIDb_2))
00394     {
00395       Element wait = (Element) loadElement
00396           .selectSingleNode(DatabasesXmlTags.ELT_WaitForCompletion);
00397       if (wait != null)
00398         requestManagerTab.wait4completion.setSelectedItem(wait.valueOf("@"
00399             + DatabasesXmlTags.ATT_policy));
00400 
00401       Iterator raidb = loadElement.elements().iterator();
00402       while (raidb.hasNext())
00403       {
00404         Element raid = (Element) raidb.next();
00405         String name = raid.getName();
00406         if (name.startsWith(DatabasesXmlTags.ELT_RAIDb_1)
00407             || name.startsWith(DatabasesXmlTags.ELT_RAIDb_2))
00408         {
00409           requestManagerTab.loadbalancer.setSelectedItem(name);
00410         }
00411       }
00412     }
00413     else
00414       requestManagerTab.loadbalancer.setSelectedItem(loadElement.getName());
00415 
00416     ///////////////////////////////////////////////////////////////////////////
00417     // Cache
00418     ///////////////////////////////////////////////////////////////////////////
00419     Element cache = (Element) requestManager
00420         .selectSingleNode(DatabasesXmlTags.ELT_RequestCache);
00421     if (cache != null)
00422     {
00423       requestManagerTab.usecaching.doClick();
00424 
00425       List cacheElements = cache.elements();
00426       iter = cacheElements.iterator();
00427       while (iter.hasNext())
00428       {
00429         Element celem = (Element) iter.next();
00430         if (celem.getName()
00431             .equalsIgnoreCase(DatabasesXmlTags.ELT_MetadataCache))
00432         {
00433           cachingTab.metadataenable.doClick();
00434           cachingTab.maxNbOfMetadata.setValue(Integer.parseInt(celem
00435               .valueOf("@" + DatabasesXmlTags.ATT_maxNbOfMetadata)));
00436           cachingTab.maxNbOfField.setValue(Integer.parseInt(celem.valueOf("@"
00437               + DatabasesXmlTags.ATT_maxNbOfField)));
00438         }
00439         else if (celem.getName().equalsIgnoreCase(
00440             DatabasesXmlTags.ELT_ParsingCache))
00441         {
00442           cachingTab.parsingenable.doClick();
00443           boolean background = Boolean.valueOf(
00444               celem.valueOf("@" + DatabasesXmlTags.ATT_backgroundParsing))
00445               .booleanValue();
00446           if (background)
00447             cachingTab.backgroundParsing.doClick();
00448           cachingTab.maxNbOfEntries.setValue(Integer.parseInt(celem.valueOf("@"
00449               + DatabasesXmlTags.ATT_maxNbOfEntries)));
00450         }
00451         else if (celem.getName().equalsIgnoreCase(
00452             DatabasesXmlTags.ELT_ResultCache))
00453         {
00454           cachingTab.resultenable.doClick();
00455           cachingTab.granularity.setSelectedItem(celem.valueOf("@"
00456               + DatabasesXmlTags.ATT_granularity));
00457           cachingTab.resultMaxNbOfEntries.setValue(Integer.parseInt(celem
00458               .valueOf("@" + DatabasesXmlTags.ATT_maxNbOfEntries)));
00459           cachingTab.pendingTimeout.setValue(Integer.parseInt(celem.valueOf("@"
00460               + DatabasesXmlTags.ATT_pendingTimeout)));
00461         }
00462       }
00463     }
00464 
00465     ///////////////////////////////////////////////////////////////////////////
00466     // Recovery
00467     ///////////////////////////////////////////////////////////////////////////
00468     Node recovery = requestManager
00469         .selectSingleNode(DatabasesXmlTags.ELT_RecoveryLog);
00470     if (recovery != null)
00471     {
00472       Node jdbcRecovery = recovery
00473           .selectSingleNode(DatabasesXmlTags.ELT_JDBCRecoveryLog);
00474       requestManagerTab.userecoverylog.doClick();
00475       recoveryTab.driver.setText(jdbcRecovery.valueOf("@"
00476           + DatabasesXmlTags.ATT_driver));
00477       recoveryTab.driverPath.setText(jdbcRecovery.valueOf("@"
00478           + DatabasesXmlTags.ATT_driverPath));
00479       recoveryTab.url.setText(jdbcRecovery.valueOf("@"
00480           + DatabasesXmlTags.ATT_url));
00481       recoveryTab.login.setText(jdbcRecovery.valueOf("@"
00482           + DatabasesXmlTags.ATT_login));
00483       recoveryTab.password.setText(jdbcRecovery.valueOf("@"
00484           + DatabasesXmlTags.ATT_password));
00485       recoveryTab.requestTimeout.setValue(Integer.parseInt(jdbcRecovery
00486           .valueOf("@" + DatabasesXmlTags.ATT_requestTimeout)));
00487     }
00488 
00489     this.validate();
00490     this.repaint();
00491   }

void org.objectweb.cjdbc.console.wizard.WizardTabs.usersChanged  ) 
 

See also:
org.objectweb.cjdbc.console.wizard.listeners.WizardListener#usersChanged()

Definition at line 168 of file WizardTabs.java.

References org.objectweb.cjdbc.console.wizard.WizardTab.usersChanged().

00169   {
00170     for (int i = 0; i < tabs.size(); i++)
00171       ((WizardListener) tabs.get(i)).usersChanged();
00172   }


The documentation for this class was generated from the following file:
Generated on Mon Apr 11 22:03:20 2005 for C-JDBC by  doxygen 1.3.9.1