diff options
12 files changed, 100 insertions, 51 deletions
diff --git a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/CreateVolumeAction.java b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/CreateVolumeAction.java index 38be70bd..f8590171 100644 --- a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/CreateVolumeAction.java +++ b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/CreateVolumeAction.java @@ -42,7 +42,7 @@ public class CreateVolumeAction extends AbstractActionDelegate { } }; dialog.create(); - dialog.getShell().setSize(500, 610); + dialog.getShell().setSize(510, 620); dialog.open(); } diff --git a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/RefreshDataAction.java b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/RefreshDataAction.java index fe9bb80a..9fd4f99b 100644 --- a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/RefreshDataAction.java +++ b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/actions/RefreshDataAction.java @@ -38,6 +38,6 @@ public class RefreshDataAction extends AbstractActionDelegate { */ @Override protected void performAction(IAction action) { - new DataSyncJob("Cluster Data Sync").schedule(); + new DataSyncJob("Reteriving Management Information").schedule(); } } diff --git a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/dialogs/AddBrickPage.java b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/dialogs/AddBrickPage.java index aa0a0b9c..b2cb3582 100644 --- a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/dialogs/AddBrickPage.java +++ b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/dialogs/AddBrickPage.java @@ -59,7 +59,7 @@ public class AddBrickPage extends WizardPage { setTitle("Add Brick"); String description = "Add bricks to [" + volume.getName() + "] "; - if ( volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTED_MIRROR) { + if ( volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTED_REPLICATE) { description += "(in multiples of " + volume.getReplicaCount() + ")"; } else if (volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTED_STRIPE) { description += "(in multiples of " + volume.getStripeCount() + ")"; @@ -105,7 +105,7 @@ public class AddBrickPage extends WizardPage { return false; } switch (volume.getVolumeType()) { - case DISTRIBUTED_MIRROR: + case DISTRIBUTED_REPLICATE: return (diskCount % volume.getReplicaCount() == 0); case DISTRIBUTED_STRIPE: return (diskCount % volume.getStripeCount() == 0); @@ -143,9 +143,9 @@ public class AddBrickPage extends WizardPage { private void setError() { String errorMessage = null; - if ( volume.getVolumeType() == VOLUME_TYPE.PLAIN_DISTRIBUTE) { + if ( volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTE) { errorMessage = "Please select at least one brick!"; - } else if( volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTED_MIRROR) { + } else if( volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTED_REPLICATE) { errorMessage = "Please select bricks in multiples of " + volume.getReplicaCount(); } else { errorMessage = "Please select bricks in multiples of " + volume.getStripeCount(); diff --git a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/dialogs/CreateVolumePage1.java b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/dialogs/CreateVolumePage1.java index eba32bb7..ba19ef10 100644 --- a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/dialogs/CreateVolumePage1.java +++ b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/dialogs/CreateVolumePage1.java @@ -170,7 +170,7 @@ public class CreateVolumePage1 extends WizardPage { private void createAccessControlLabel(Composite container) { Label lblAccessControl = new Label(container, SWT.NONE); lblAccessControl.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); - lblAccessControl.setText("Access Control: "); + lblAccessControl.setText("Allow Access From: "); } private void createCifsUserLabel(Composite container) { @@ -267,23 +267,28 @@ public class CreateVolumePage1 extends WizardPage { GridData typeComboData = new GridData(SWT.LEFT, SWT.CENTER, true, false, 1, 1); typeCombo.setLayoutData(typeComboData); typeComboViewer.setContentProvider(new ArrayContentProvider()); - typeComboViewer.setInput(Volume.VOLUME_TYPE.values()); - typeCombo.select(VOLUME_TYPE.PLAIN_DISTRIBUTE.ordinal()); // default type = Plain Distribute + + VOLUME_TYPE[] volumeTypes = new VOLUME_TYPE[3]; + volumeTypes[0] = VOLUME_TYPE.DISTRIBUTE; + volumeTypes[1] = VOLUME_TYPE.REPLICATE; + volumeTypes[2] = VOLUME_TYPE.STRIPE; + + typeComboViewer.setInput(volumeTypes); + typeCombo.select(0); // default type = Plain Distribute typeComboViewer.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { - VOLUME_TYPE volumeType = (VOLUME_TYPE)element; - return Volume.getVolumeTypeStr(volumeType); + return Volume.getVolumeTypeStr((VOLUME_TYPE)element); } }); typeComboViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { - validateForm(); + validateForm(); } }); } - + private void createTypeLabel(Composite container) { Label lblType = new Label(container, SWT.NONE); lblType.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); @@ -333,7 +338,9 @@ public class CreateVolumePage1 extends WizardPage { IStructuredSelection selection = (IStructuredSelection)typeComboViewer.getSelection(); volume.setVolumeType((VOLUME_TYPE)selection.getFirstElement()); - + volume.setReplicaCount(Volume.DEFAULT_REPLICA_COUNT); + volume.setStripeCount(Volume.DEFAULT_STRIPE_COUNT); + volume.setTransportType(TRANSPORT_TYPE.ETHERNET); // Support only for Ethernet Set<NAS_PROTOCOL> nasProtocols = new HashSet<Volume.NAS_PROTOCOL>(); nasProtocols.add(NAS_PROTOCOL.GLUSTERFS); @@ -402,7 +409,7 @@ public class CreateVolumePage1 extends WizardPage { VOLUME_TYPE volumeType = (VOLUME_TYPE) ((IStructuredSelection) typeComboViewer .getSelection()).getFirstElement(); - if (volumeType == VOLUME_TYPE.DISTRIBUTED_MIRROR && diskCount % 2 != 0) { + if (volumeType == VOLUME_TYPE.DISTRIBUTED_REPLICATE && diskCount % 2 != 0) { setError("Mirror type volume requires bricks in multiples of two"); } else if (volumeType == VOLUME_TYPE.DISTRIBUTED_STRIPE && diskCount % 4 != 0) { setError("Stripe type volume requires bricks in multiples of four"); @@ -417,10 +424,12 @@ public class CreateVolumePage1 extends WizardPage { } if (!ValidationUtil.isValidAccessControl(accessControl)) { - setError("Access control list must be a comma separated list of IP addresses/Host names. Please enter a valid value!"); + setError("Invalid IP address/Host name [" + ValidationUtil.getInvalidIpOrHostname(accessControl) + + "]. Please enter a valid value!"); } } + private void validateCifsUsers() { if (btnCIFS.getSelection()) { String cifsUserList = txtCifsUsers.getText().trim(); diff --git a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/VolumeSummaryView.java b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/VolumeSummaryView.java index 45e97b75..45153190 100644 --- a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/VolumeSummaryView.java +++ b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/VolumeSummaryView.java @@ -201,7 +201,7 @@ public class VolumeSummaryView extends ViewPart { infoLabel.setLayoutData(new GridData(GridData.BEGINNING, GridData.VERTICAL_ALIGN_CENTER, false, false, 2, 0)); // TODO: implement a logic to identify the corresponding glusterfs client download link - String message = "You can download gluster FS client from"; + String message = "You can download GlusterFS client from"; String glusterFSDownloadlinkText = "here."; final String glusterFSDownloadlink = "http://download.gluster.com/pub/gluster/glusterfs/"; @@ -245,7 +245,7 @@ public class VolumeSummaryView extends ViewPart { createVolumeTypeField(section); VOLUME_TYPE volumeType = volume.getVolumeType(); - if (volumeType == VOLUME_TYPE.DISTRIBUTED_MIRROR) { + if (volumeType == VOLUME_TYPE.DISTRIBUTED_REPLICATE) { createReplicaCountField(section); } @@ -286,7 +286,7 @@ public class VolumeSummaryView extends ViewPart { } private void createAccessControlField(Composite section) { - toolkit.createLabel(section, "Access Control: ", SWT.NONE); + toolkit.createLabel(section, "Allow Access From: ", SWT.NONE); accessControlText = toolkit.createText(section, volume.getAccessControlList(), SWT.BORDER); populateAccessControlText(); @@ -636,7 +636,12 @@ public class VolumeSummaryView extends ViewPart { private void updateBrickChanges(Volume volume) { numberOfBricks.setText("" + volume.getNumOfBricks()); - totalDiskSpace.setText("" + NumberUtil.formatNumber((getTotalDiskSpace() / 1024))); + Double replicaCount = 1d; + if (volume.getVolumeType() == VOLUME_TYPE.REPLICATE + || volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTED_REPLICATE) { + replicaCount = (double) volume.getReplicaCount(); + } + totalDiskSpace.setText("" + NumberUtil.formatNumber((getTotalDiskSpace() / 1024) / replicaCount)); } private double getDiskSize(String serverName, String deviceName) { @@ -674,7 +679,12 @@ public class VolumeSummaryView extends ViewPart { private void createDiskSpaceField(Composite section) { Label diskSpaceLabel = toolkit.createLabel(section, "Total Disk Space (GB): ", SWT.NONE); diskSpaceLabel.setToolTipText("<b>bold</b>normal"); - totalDiskSpace = toolkit.createLabel(section, "" + NumberUtil.formatNumber((getTotalDiskSpace() / 1024)), SWT.NONE); + Double replicaCount = 1d; + if (volume.getVolumeType() == VOLUME_TYPE.REPLICATE + || volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTED_REPLICATE) { + replicaCount = (double) volume.getReplicaCount(); + } + totalDiskSpace = toolkit.createLabel(section, "" + NumberUtil.formatNumber((getTotalDiskSpace() / 1024)/ replicaCount ), SWT.NONE); toolkit.createLabel(section, "", SWT.NONE); // dummy } @@ -742,8 +752,9 @@ public class VolumeSummaryView extends ViewPart { } if (!ValidationUtil.isValidAccessControl(accessControlText.getText())) { - errDecoration - .setDescriptionText("Access control list must be a comma separated list of IP addresses/Host names. Please enter a valid value!"); + errDecoration.setDescriptionText("Invalid IP address/Host name [" + + ValidationUtil.getInvalidIpOrHostname(accessControlText.getText()) + + "]. Please enter a valid value!"); errDecoration.show(); } } @@ -772,4 +783,5 @@ public class VolumeSummaryView extends ViewPart { validateCifsUsers(); return true; } + } diff --git a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/pages/VolumeLogsPage.java b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/pages/VolumeLogsPage.java index 87c319ef..e573229c 100644 --- a/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/pages/VolumeLogsPage.java +++ b/src/com.gluster.storage.management.console/src/com/gluster/storage/management/console/views/pages/VolumeLogsPage.java @@ -161,8 +161,8 @@ public class VolumeLogsPage extends Composite { } private void createSearchButton(Composite composite) { - Button btnGo = toolkit.createButton(composite, "&Go", SWT.NONE); - btnGo.setBounds(615, 55, 50, 30); + Button btnGo = toolkit.createButton(composite, "&Fetch Logs", SWT.NONE); + btnGo.setBounds (615, 55, 75, 30); btnGo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/GlusterDummyModel.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/GlusterDummyModel.java index d162ec38..2139bbd7 100644 --- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/GlusterDummyModel.java +++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/GlusterDummyModel.java @@ -117,17 +117,17 @@ public class GlusterDummyModel { private void initializeVolumes(Cluster cluster) { List<Volume> volumes = new ArrayList<Volume>(); - volume1 = addVolume(volumes, "Volume1", cluster, VOLUME_TYPE.PLAIN_DISTRIBUTE, TRANSPORT_TYPE.ETHERNET, + volume1 = addVolume(volumes, "Volume1", cluster, VOLUME_TYPE.DISTRIBUTE, TRANSPORT_TYPE.ETHERNET, VOLUME_STATUS.ONLINE); - volume2 = addVolume(volumes, "Volume2", cluster, VOLUME_TYPE.PLAIN_DISTRIBUTE, TRANSPORT_TYPE.ETHERNET, + volume2 = addVolume(volumes, "Volume2", cluster, VOLUME_TYPE.DISTRIBUTE, TRANSPORT_TYPE.ETHERNET, VOLUME_STATUS.ONLINE); - volume3 = addVolume(volumes, "Volume3", cluster, VOLUME_TYPE.DISTRIBUTED_MIRROR, TRANSPORT_TYPE.ETHERNET, + volume3 = addVolume(volumes, "Volume3", cluster, VOLUME_TYPE.DISTRIBUTED_REPLICATE, TRANSPORT_TYPE.ETHERNET, VOLUME_STATUS.OFFLINE); volume3.setReplicaCount(2); - volume4 = addVolume(volumes, "Volume4", cluster, VOLUME_TYPE.PLAIN_DISTRIBUTE, TRANSPORT_TYPE.ETHERNET, + volume4 = addVolume(volumes, "Volume4", cluster, VOLUME_TYPE.DISTRIBUTE, TRANSPORT_TYPE.ETHERNET, VOLUME_STATUS.ONLINE); volume5 = addVolume(volumes, "Volume5", cluster, VOLUME_TYPE.DISTRIBUTED_STRIPE, TRANSPORT_TYPE.INFINIBAND, diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Volume.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Volume.java index c3b73c27..2ce1ea44 100644 --- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Volume.java +++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Volume.java @@ -44,9 +44,9 @@ public class Volume extends Entity { }; public enum VOLUME_TYPE { - PLAIN_DISTRIBUTE, DISTRIBUTED_MIRROR, DISTRIBUTED_STRIPE + DISTRIBUTE, REPLICATE, DISTRIBUTED_REPLICATE, STRIPE, DISTRIBUTED_STRIPE }; - + public enum TRANSPORT_TYPE { ETHERNET, INFINIBAND }; @@ -62,8 +62,9 @@ public class Volume extends Entity { public static final String OPTION_AUTH_ALLOW = "auth.allow"; public static final String OPTION_NFS_DISABLE = "nfs.disable"; - private static final String[] VOLUME_TYPE_STR = new String[] { "Plain Distribute", "Distributed Mirror", - "Distributed Stripe" }; + private static final String[] VOLUME_TYPE_STR = new String[] { "Distribute", "Replicate", "Distributed Replicate", + "Stripe", "Distributed Stripe" }; + private static final String[] TRANSPORT_TYPE_STR = new String[] { "Ethernet", "Infiniband" }; private static final String[] STATUS_STR = new String[] { "Online", "Offline" }; private static final String[] NAS_PROTOCOL_STR = new String[] { "Gluster", "NFS", "CIFS" }; @@ -87,7 +88,7 @@ public class Volume extends Entity { public String getVolumeTypeStr() { return getVolumeTypeStr(getVolumeType()); } - + public static String getVolumeTypeStr(VOLUME_TYPE volumeType) { return VOLUME_TYPE_STR[volumeType.ordinal()]; } @@ -122,7 +123,7 @@ public class Volume extends Entity { if (volumeType == VOLUME_TYPE.DISTRIBUTED_STRIPE) { setReplicaCount(0); setStripeCount(DEFAULT_STRIPE_COUNT); - } else if (volumeType == VOLUME_TYPE.DISTRIBUTED_MIRROR) { + } else if (volumeType == VOLUME_TYPE.DISTRIBUTED_REPLICATE) { setReplicaCount(DEFAULT_REPLICA_COUNT); setStripeCount(0); } else { diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/utils/ValidationUtil.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/utils/ValidationUtil.java index b1ceb478..df0b749a 100644 --- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/utils/ValidationUtil.java +++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/utils/ValidationUtil.java @@ -7,13 +7,28 @@ public class ValidationUtil { // Access control may contains IP with wild card(*), hostname and/or multiple ip/hostnames public static boolean isValidAccessControl(String ac) { String access[] = ac.split(","); + String ip; boolean isValidAccessControl = true; for (int i = 0; i < access.length && isValidAccessControl; i++) { - isValidAccessControl = (isValidIpWithWC(access[i]) || isValidHostName(access[i])); + ip = access[i].trim(); + isValidAccessControl = (isValidIpWithWC(ip) || isValidHostName(ip)); } return isValidAccessControl; } + public static String getInvalidIpOrHostname(String ac) { + String access[] = ac.split(","); + String ip; + boolean isValidAccessControl = true; + for (int i = 0; i < access.length && isValidAccessControl; i++) { + ip = access[i].trim(); + if (!(isValidIpWithWC(ip) || isValidHostName(ip))) { + return access[i]; + } + } + return ""; + } + public static boolean isValidIpWithWC(String ip) { String ipAddress[] = ip.split("\\."); boolean isValid = true; diff --git a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/resources/v1_0/VolumesResource.java b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/resources/v1_0/VolumesResource.java index 89e7eaf1..74275955 100644 --- a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/resources/v1_0/VolumesResource.java +++ b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/resources/v1_0/VolumesResource.java @@ -212,11 +212,8 @@ public class VolumesResource extends AbstractResource { if (enableCifs) { volumeService.modifyCIFSUsers(clusterName, volumeName, cifsUsers); } else { + volumeService.stopCifsReExport(clusterName, volumeName); volumeService.deleteCifsUsers(clusterName, volumeName); - //TODO: workaround - If samba service are not stopped by "deleteCifsUsers" script, - // gateway needs to stop the services - // modifyCIFSUsers(clusterName, volumeName, ""); - // stopCifsReExport(clusterName, volumeName); } } else { volumeService.performVolumeOperation(clusterName, volumeName, operation); diff --git a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/VolumeService.java b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/VolumeService.java index 0005a5a9..0bd1b4ce 100644 --- a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/VolumeService.java +++ b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/services/VolumeService.java @@ -333,7 +333,7 @@ public class VolumeService { throw new GlusterValidationException("Cluster [" + clusterName + "] not found!"); } - if (volumeType.equals(VOLUME_TYPE.DISTRIBUTED_MIRROR) && replicaCount <= 0) { + if (volumeType.equals(VOLUME_TYPE.DISTRIBUTED_REPLICATE) && replicaCount <= 0) { throw new GlusterValidationException("Replica count must be a positive integer"); } diff --git a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/utils/GlusterUtil.java b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/utils/GlusterUtil.java index db4bd4bd..ccb1054a 100644 --- a/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/utils/GlusterUtil.java +++ b/src/com.gluster.storage.management.gateway/src/com/gluster/storage/management/gateway/utils/GlusterUtil.java @@ -69,6 +69,10 @@ public class GlusterUtil { private static final String VOLUME_LOG_LOCATION_PFX = "log file location:"; private static final String VOLUME_TYPE_DISTRIBUTE = "Distribute"; private static final String VOLUME_TYPE_REPLICATE = "Replicate"; + private static final String VOLUME_TYPE_DISTRIBUTED_REPLICATTE = "Distributed-Replicate"; + private static final String VOLUME_TYPE_STRIPE = "Stripe"; + private static final String VOLUME_TYPE_DISTRIBUTED_STRIPE = "Distributed-Stripe"; + private static final String GLUSTERD_INFO_FILE = "/etc/glusterd/glusterd.info"; private static final GlusterCoreUtil glusterCoreUtil = new GlusterCoreUtil(); @@ -251,15 +255,15 @@ public class GlusterUtil { public void createVolume(String knownServer, String volumeName, String volumeTypeStr, String transportTypeStr, Integer replicaCount, Integer stripeCount, String bricks, String accessProtocols, String options) { - + int count = 1; // replica or stripe count VOLUME_TYPE volType = Volume.getVolumeTypeByStr(volumeTypeStr); String volTypeArg = null; - if (volType == VOLUME_TYPE.DISTRIBUTED_MIRROR) { + if (volType == VOLUME_TYPE.REPLICATE || volType == VOLUME_TYPE.DISTRIBUTED_REPLICATE) { volTypeArg = "replica"; count = replicaCount; - } else if (volType == VOLUME_TYPE.DISTRIBUTED_STRIPE) { + } else if (volType == VOLUME_TYPE.STRIPE || volType == VOLUME_TYPE.DISTRIBUTED_STRIPE) { volTypeArg = "stripe"; count = stripeCount; } @@ -357,13 +361,23 @@ public class GlusterUtil { String volumeType = extractToken(line, VOLUME_TYPE_PFX); if (volumeType != null) { if (volumeType.equals(VOLUME_TYPE_DISTRIBUTE)) { - volume.setVolumeType(VOLUME_TYPE.PLAIN_DISTRIBUTE); + volume.setVolumeType(VOLUME_TYPE.DISTRIBUTE); + } else if (volumeType.equals(VOLUME_TYPE_REPLICATE)) { - volume.setVolumeType(VOLUME_TYPE.DISTRIBUTED_MIRROR); + volume.setVolumeType(VOLUME_TYPE.REPLICATE); volume.setReplicaCount(Volume.DEFAULT_REPLICA_COUNT); - } else { + + } else if ( volumeType.equals(VOLUME_TYPE_DISTRIBUTED_REPLICATTE) ){ + volume.setVolumeType(VOLUME_TYPE.DISTRIBUTED_REPLICATE); + volume.setReplicaCount(Volume.DEFAULT_REPLICA_COUNT); + + } else if ( volumeType.equals(VOLUME_TYPE_STRIPE) ){ + volume.setVolumeType(VOLUME_TYPE.STRIPE); + volume.setReplicaCount(Volume.DEFAULT_REPLICA_COUNT); + + } else if ( volumeType.equals(VOLUME_TYPE_DISTRIBUTED_STRIPE) ){ volume.setVolumeType(VOLUME_TYPE.DISTRIBUTED_STRIPE); - volume.setStripeCount(Volume.DEFAULT_STRIPE_COUNT); + volume.setReplicaCount(Volume.DEFAULT_STRIPE_COUNT); } return true; } @@ -374,13 +388,14 @@ public class GlusterUtil { if (extractToken(line, "x") != null) { // expected formated of line is "Number of Bricks: 3 x 2 = 6" int count = Integer.parseInt(line.split("x")[1].split("=")[0].trim()); - if (volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTED_STRIPE) { + if (volume.getVolumeType() == VOLUME_TYPE.STRIPE + || volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTED_STRIPE) { volume.setStripeCount(count); - } else if (volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTED_MIRROR) { + } else if (volume.getVolumeType() == VOLUME_TYPE.REPLICATE + || volume.getVolumeType() == VOLUME_TYPE.DISTRIBUTED_REPLICATE) { volume.setReplicaCount(count); volume.setStripeCount(0); } - } return; } |
