public void createPartition() { try { PartitionSchema partition = new PartitionSchema(); PartitionSchemaDialog partitionDialog = new PartitionSchemaDialog(shell, partition, repository.readDatabases(), variableSpace); if (partitionDialog.open()) { // See if this partition already exists... ObjectId idPartition = repository.getPartitionSchemaID(partition.getName()); if (idPartition == null) { if (partition.getName() != null && !partition.getName().equals("")) { repository.insertLogEntry( BaseMessages.getString( RepositoryExplorer.class, "PartitionsController.Message.CreatingPartition", partition.getName())); repository.save(partition, Const.VERSION_COMMENT_INITIAL_VERSION, null); } else { MessageBox mb = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK); mb.setMessage( BaseMessages.getString( PKG, "RepositoryExplorerDialog.Partition.Edit.InvalidName.Message")); mb.setText( BaseMessages.getString(PKG, "RepositoryExplorerDialog.Partition.Create.Title")); mb.open(); } } else { MessageBox mb = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK); mb.setMessage( BaseMessages.getString( PKG, "RepositoryExplorerDialog.Partition.Create.AlreadyExists.Message")); mb.setText( BaseMessages.getString( PKG, "RepositoryExplorerDialog.Partition.Create.AlreadyExists.Title")); mb.open(); } } } catch (KettleException e) { new ErrorDialog( shell, BaseMessages.getString( PKG, "RepositoryExplorerDialog.Partition.Create.UnexpectedError.Title"), BaseMessages.getString( PKG, "RepositoryExplorerDialog.Partition.Create.UnexpectedError.Message"), e); } finally { refreshPartitions(); } }
public void editPartition() { String partitionSchemaName = ""; try { Collection<UIPartition> partitions = partitionsTable.getSelectedItems(); if (partitions != null && !partitions.isEmpty()) { // Grab the first item in the list & send it to the partition schema dialog PartitionSchema partitionSchema = ((UIPartition) partitions.toArray()[0]).getPartitionSchema(); partitionSchemaName = partitionSchema.getName(); // Make sure the partition already exists ObjectId partitionId = repository.getPartitionSchemaID(partitionSchema.getName()); if (partitionId == null) { MessageBox mb = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK); mb.setMessage( BaseMessages.getString( PKG, "RepositoryExplorerDialog.Partition.DoesNotExists.Message", partitionSchemaName)); mb.setText(BaseMessages.getString(PKG, "RepositoryExplorerDialog.Partition.Edit.Title")); mb.open(); } else { PartitionSchemaDialog partitionDialog = new PartitionSchemaDialog( shell, partitionSchema, repository.readDatabases(), variableSpace); if (partitionDialog.open()) { if (partitionSchema.getName() != null && !partitionSchema.getName().equals("")) { repository.insertLogEntry( BaseMessages.getString( RepositoryExplorer.class, "PartitionsController.Message.UpdatingPartition", partitionSchema.getName())); repository.save(partitionSchema, Const.VERSION_COMMENT_EDIT_VERSION, null); } else { MessageBox mb = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK); mb.setMessage( BaseMessages.getString( PKG, "RepositoryExplorerDialog.Partition.Edit.InvalidName.Message")); mb.setText( BaseMessages.getString(PKG, "RepositoryExplorerDialog.Partition.Edit.Title")); mb.open(); } } } } else { MessageBox mb = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK); mb.setMessage( BaseMessages.getString( PKG, "RepositoryExplorerDialog.Partition.NoItemSelected.Message")); mb.setText(BaseMessages.getString(PKG, "RepositoryExplorerDialog.Partition.Edit.Title")); mb.open(); } } catch (KettleException e) { new ErrorDialog( shell, BaseMessages.getString(PKG, "RepositoryExplorerDialog.Partition.Edit.Title"), BaseMessages.getString( PKG, "RepositoryExplorerDialog.Partition.Edit.UnexpectedError.Message") + partitionSchemaName + "]", e); } finally { refreshPartitions(); } }