summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.core
diff options
context:
space:
mode:
authorSelvam <selvam@gluster.com>2011-04-29 15:04:18 +0530
committerSelvam <selvam@gluster.com>2011-04-29 15:04:18 +0530
commit3149b18d24539f5680848c25064f447c15bbbcc4 (patch)
tree4f6b3ef9fcb7a8951511324697752528191fc49e /src/com.gluster.storage.management.core
parente4b86192d443e968cf2ad417a46c203ab2751418 (diff)
parent276118b6d207bb49905d1e9c19a7f08c33f9ed8d (diff)
Merge remote branch 'upstream/master'
Conflicts: src/com.gluster.storage.management.client/src/com/gluster/storage/management/client/VolumesClient.java src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/utils/GlusterUtil.java
Diffstat (limited to 'src/com.gluster.storage.management.core')
-rw-r--r--src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/GlusterDummyModel.java2
-rw-r--r--src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/LogMessage.java17
-rw-r--r--src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Volume.java20
-rw-r--r--src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/adapters/VolumeLogDateAdapter.java53
-rw-r--r--src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/utils/DateUtil.java2
5 files changed, 80 insertions, 14 deletions
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 f25999f0..09137014 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
@@ -218,7 +218,7 @@ public class GlusterDummyModel {
private void addMessages(List<LogMessage> messages, Disk disk, String severity, int count) {
for (int i = 1; i <= count; i++) {
String message = severity + "message" + i;
- messages.add(new LogMessage(new Date(), disk, severity, message));
+ messages.add(new LogMessage(new Date(), disk.getQualifiedName(), severity, message));
}
}
diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/LogMessage.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/LogMessage.java
index d81b8d0f..4f6347dc 100644
--- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/LogMessage.java
+++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/LogMessage.java
@@ -20,14 +20,17 @@ package com.gluster.storage.management.core.model;
import java.util.Date;
+import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import com.gluster.storage.management.core.model.adapters.VolumeLogDateAdapter;
import com.gluster.storage.management.core.utils.StringUtil;
@XmlRootElement
public class LogMessage implements Filterable {
private Date timestamp;
- private Disk disk;
+ private String disk;
private String severity;
private String message;
@@ -38,6 +41,8 @@ public class LogMessage implements Filterable {
// TODO: Parse the log message and extract fields
}
+ @XmlElement(name = "timestamp", required = true)
+ @XmlJavaTypeAdapter(VolumeLogDateAdapter.class)
public Date getTimestamp() {
return timestamp;
}
@@ -46,11 +51,11 @@ public class LogMessage implements Filterable {
this.timestamp = timestamp;
}
- public Disk getDisk() {
+ public String getDisk() {
return disk;
}
- public void setDisk(Disk disk) {
+ public void setDisk(String disk) {
this.disk = disk;
}
@@ -70,7 +75,7 @@ public class LogMessage implements Filterable {
this.message = message;
}
- public LogMessage(Date timestamp, Disk disk, String severity, String message) {
+ public LogMessage(Date timestamp, String disk, String severity, String message) {
setTimestamp(timestamp);
setDisk(disk);
setSeverity(severity);
@@ -79,7 +84,7 @@ public class LogMessage implements Filterable {
@Override
public boolean filter(String filterString, boolean caseSensitive) {
- return StringUtil.filterString(getSeverity() + getTimestamp() + getDisk().getServerName()
- + getDisk().getQualifiedName() + getMessage(), filterString, caseSensitive);
+ return StringUtil.filterString(getSeverity() + getTimestamp() + getDisk() + getMessage(), filterString,
+ caseSensitive);
}
}
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 e01a35b3..99b76ed7 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
@@ -71,6 +71,7 @@ public class Volume extends Entity {
private double totalDiskSpace = 0;
private List<String> disks = new ArrayList<String>();
+ private List<String> bricks = new ArrayList<String>();
public Volume() {
}
@@ -206,9 +207,6 @@ public class Volume extends Entity {
}
public void addDisk(String disk) {
- // if (disks.add(disk) && disk.getStatus() != DISK_STATUS.OFFLINE) {
- // totalDiskSpace += disk.getSpace();
- // }
disks.add(disk);
}
@@ -219,9 +217,7 @@ public class Volume extends Entity {
}
public void removeDisk(String disk) {
- // if (disks.remove(disk)) {
- // totalDiskSpace -= disk.getSpace();
- // }
+ disks.remove(disk);
}
public void removeAllDisks() {
@@ -229,6 +225,18 @@ public class Volume extends Entity {
totalDiskSpace = 0;
}
+ public void addBrick(String brick) {
+ bricks.add(brick);
+ }
+
+ public void removeBrick(String brick) {
+ bricks.remove(brick);
+ }
+
+ public List<String> getBricks() {
+ return bricks;
+ }
+
public void setDisks(List<String> disks) {
removeAllDisks();
addDisks(disks);
diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/adapters/VolumeLogDateAdapter.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/adapters/VolumeLogDateAdapter.java
new file mode 100644
index 00000000..254d5efd
--- /dev/null
+++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/adapters/VolumeLogDateAdapter.java
@@ -0,0 +1,53 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Gluster, Inc. <http://www.gluster.com>
+ * This file is part of Gluster Management Console.
+ *
+ * Gluster Management Console is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Affero General Public License as published
+ * by the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Gluster Management Console 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 Affero General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see
+ * <http://www.gnu.org/licenses/>.
+ *******************************************************************************/
+
+package com.gluster.storage.management.core.model.adapters;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import javax.xml.bind.annotation.adapters.XmlAdapter;
+
+/**
+ * Adapter class used for converting timestamp from Gluster volume log files to Date object.
+ */
+public class VolumeLogDateAdapter extends XmlAdapter<String, Date> {
+ private static final String DATE_FORMAT = "yyyy-MM-dd HH:mm:ss.SSS";
+ private SimpleDateFormat dateFormatter = new SimpleDateFormat(DATE_FORMAT);
+
+ /* (non-Javadoc)
+ * @see javax.xml.bind.annotation.adapters.XmlAdapter#unmarshal(java.lang.Object)
+ */
+ @Override
+ public Date unmarshal(String input) throws Exception {
+ input = input.trim();
+ if(input.length() > DATE_FORMAT.length()) {
+ input = input.substring(0, DATE_FORMAT.length());
+ }
+ return dateFormatter.parse(input);
+ }
+
+ /* (non-Javadoc)
+ * @see javax.xml.bind.annotation.adapters.XmlAdapter#marshal(java.lang.Object)
+ */
+ @Override
+ public String marshal(Date input) throws Exception {
+ return dateFormatter.format(input);
+ }
+}
diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/utils/DateUtil.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/utils/DateUtil.java
index 1b284cb8..d4529a00 100644
--- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/utils/DateUtil.java
+++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/utils/DateUtil.java
@@ -29,7 +29,7 @@ public class DateUtil {
}
public static final String formatTime(Date inputDate) {
- DateFormat formatter = new SimpleDateFormat("HH:mm:ss z");
+ DateFormat formatter = new SimpleDateFormat("HH:mm:ss.SSS");
return formatter.format(inputDate);
}
}