protected void addMetadataTable() { // Create a new metadata and Add it on the connection IProxyRepositoryFactory factory = ProxyRepositoryFactory.getInstance(); metadataTable = ConnectionFactory.eINSTANCE.createMetadataTable(); metadataTable.setId(factory.getNextId()); // initExistingNames(); metadataTable.setLabel(IndiceHelper.getIndexedLabel(metadataTable.getLabel(), existingNames)); EList<SalesforceModuleUnit> modules = temConnection.getModules(); // EList<SalesforceModuleUnit> modules = getConnection().getModules(); for (int i = 0; i < modules.size(); i++) { if (modules.get(i).getModuleName().equals(moduleName)) { modules.get(i).getTables().add(modules.get(i).getTables().size(), metadataTable); break; } } // init TreeNavigator initTreeNavigatorNodes(); metadataNameText.setText(metadataTable.getLabel()); }
public SalesforceSchemaWizard( IWorkbench workbench, boolean creation, RepositoryNode node, String[] existingNames, boolean isSinglePageOnly) { super(workbench, creation); this.existingNames = existingNames; this.isSinglePageOnly = isSinglePageOnly; setNeedsProgressMonitor(true); // TODO: should to changed icon. setDefaultPageImageDescriptor(ImageProvider.getImageDesc(ECoreImage.DEFAULT_WIZ)); switch (node.getType()) { case SIMPLE_FOLDER: case REPOSITORY_ELEMENT: pathToSave = RepositoryNodeUtilities.getPath(node); break; case SYSTEM_FOLDER: pathToSave = new Path(""); // $NON-NLS-1$ break; } switch (node.getType()) { case SIMPLE_FOLDER: case SYSTEM_FOLDER: connection = ConnectionFactory.eINSTANCE.createSalesforceSchemaConnection(); connection.setName(ERepositoryObjectType.METADATA_SALESFORCE_SCHEMA.getKey()); MetadataTable metadataTable = ConnectionFactory.eINSTANCE.createMetadataTable(); IProxyRepositoryFactory factory = ProxyRepositoryFactory.getInstance(); metadataTable.setId(factory.getNextId()); RecordFile record = (RecordFile) ConnectionHelper.getPackage(connection.getName(), connection, RecordFile.class); if (record != null) { // hywang PackageHelper.addMetadataTable(metadataTable, record); } else { RecordFile newrecord = RecordFactory.eINSTANCE.createRecordFile(); newrecord.setName(connection.getName()); ConnectionHelper.addPackage(newrecord, connection); PackageHelper.addMetadataTable(metadataTable, newrecord); } connectionProperty = PropertiesFactory.eINSTANCE.createProperty(); connectionProperty.setAuthor( ((RepositoryContext) CoreRuntimePlugin.getInstance() .getContext() .getProperty(Context.REPOSITORY_CONTEXT_KEY)) .getUser()); connectionProperty.setVersion(VersionUtils.DEFAULT_VERSION); connectionProperty.setStatusCode(""); // $NON-NLS-1$ connectionItem = PropertiesFactory.eINSTANCE.createSalesforceSchemaConnectionItem(); connectionItem.setProperty(connectionProperty); connectionItem.setConnection(connection); initProxySettings(connection); break; case REPOSITORY_ELEMENT: connection = (SalesforceSchemaConnection) ((ConnectionItem) node.getObject().getProperty().getItem()).getConnection(); connectionProperty = node.getObject().getProperty(); connectionItem = (ConnectionItem) node.getObject().getProperty().getItem(); // set the repositoryObject, lock and set isRepositoryObjectEditable setRepositoryObject(node.getObject()); isRepositoryObjectEditable(); initLockStrategy(); break; } if (!creation) { this.originaleObjectLabel = this.connectionItem.getProperty().getLabel(); this.originalVersion = this.connectionItem.getProperty().getVersion(); this.originalDescription = this.connectionItem.getProperty().getDescription(); this.originalPurpose = this.connectionItem.getProperty().getPurpose(); this.originalStatus = this.connectionItem.getProperty().getStatusCode(); } initConnection(); }
/* * (non-Javadoc) * * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite) */ public void createControl(Composite parent) { // TODO Auto-generated method stub currentComposite = null; WSDLSchemaConnection connection = ((WSDLSchemaConnection) connectionItem.getConnection()); if (ConnectionHelper.getTables(connection).size() < 2) { MetadataTable metadataTable = ConnectionHelper.getTables(connection).toArray(new MetadataTable[0])[0]; metadataTable.setLabel("Output"); MetadataTable inPutMetadataTable = ConnectionFactory.eINSTANCE.createMetadataTable(); IProxyRepositoryFactory factory = ProxyRepositoryFactory.getInstance(); inPutMetadataTable.setLabel("Input"); inPutMetadataTable.setId(factory.getNextId()); GenericPackage g = (GenericPackage) ConnectionHelper.getPackage( connection.getName(), (Connection) connection, GenericPackage.class); if (g != null) { // hywang g.getOwnedElement().add(inPutMetadataTable); ConnectionHelper.getTables(connection).add(inPutMetadataTable); } else { GenericPackage gpkg = ConnectionFactory.eINSTANCE.createGenericPackage(); PackageHelper.addMetadataTable(inPutMetadataTable, gpkg); ConnectionHelper.addPackage(gpkg, connection); } // connection.getTables().add(inPutMetadataTable); } switch (step) { case 2: currentComposite = new WebServiceStep1Form( parent, connectionItem, null, new String[] {}, contextModeManager); break; case 3: MetadataTable metadataTable2 = null; Set<MetadataTable> tables = ConnectionHelper.getTables(connection); Iterator<MetadataTable> it = tables.iterator(); while (it.hasNext()) { MetadataTable table = (MetadataTable) it.next(); if (table.getLabel().equals("Output")) { metadataTable2 = table; } } currentComposite = new WebServiceStep2Form(parent, connectionItem, contextModeManager, metadataTable2); break; default: System.out.println("error..."); } currentComposite.setReadOnly(!isRepositoryObjectEditable); AbstractForm.ICheckListener listener = new AbstractForm.ICheckListener() { public void checkPerformed(final AbstractForm source) { if (source.isStatusOnError()) { WebServiceSchemaWizardPage.this.setPageComplete(false); setErrorMessage(source.getStatus()); } else { WebServiceSchemaWizardPage.this.setPageComplete(isRepositoryObjectEditable); setErrorMessage(null); setMessage(source.getStatus()); } } }; currentComposite.setListener(listener); setControl((Composite) currentComposite); }