Index: hs_err_pid14486.log
===================================================================
--- hs_err_pid14486.log	(revision 0)
+++ hs_err_pid14486.log	(revision 14)
@@ -0,0 +1,765 @@
+#
+# A fatal error has been detected by the Java Runtime Environment:
+#
+#  SIGSEGV (0xb) at pc=0x00007fc0d8dc8695, pid=14486, tid=140466403481344
+#
+# JRE version: 6.0_26-b03
+# Java VM: Java HotSpot(TM) 64-Bit Server VM (20.1-b02 mixed mode linux-amd64 compressed oops)
+# Problematic frame:
+# C  [libgtk-x11-2.0.so.0+0x21a695]  __float128+0xf5
+#
+# If you would like to submit a bug report, please visit:
+#   http://java.sun.com/webapps/bugreport/crash.jsp
+# The crash happened outside the Java Virtual Machine in native code.
+# See problematic frame for where to report the bug.
+#
+
+---------------  T H R E A D  ---------------
+
+Current thread (0x0000000041160800):  JavaThread "main" [_thread_in_native, id=14491, stack(0x00007fc0e2051000,0x00007fc0e2152000)]
+
+siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x0000000000000030
+
+Registers:
+RAX=0x0000000000000000, RBX=0x00007fc0e2150340, RCX=0x00007fc0e2151700, RDX=0x00007fc0e375c280
+RSP=0x00007fc0e2150290, RBP=0x00007fc0e21502a0, RSI=0x0000000000000000, RDI=0x00007fc0e21502a0
+R8 =0x000000004133e140, R9 =0x0000000000000001, R10=0x0000000000000001, R11=0x0000000000000000
+R12=0x00007fc0d8f3d5a0, R13=0x0000000041591590, R14=0x00007fc0e21502e0, R15=0x0000000041857fd0
+RIP=0x00007fc0d8dc8695, EFLAGS=0x0000000000010202, CSGSFS=0x0000000000000033, ERR=0x0000000000000004
+  TRAPNO=0x000000000000000e
+
+Top of Stack: (sp=0x00007fc0e2150290)
+0x00007fc0e2150290:   00007fc000000005 0000000000000000
+0x00007fc0e21502a0:   00007fc000000001 00007fc0d426d860
+0x00007fc0e21502b0:   0000000000000000 0000000000000000
+0x00007fc0e21502c0:   0000000000000000 0000000000000000
+0x00007fc0e21502d0:   0000000000000000 00007fc0d426dbb8
+0x00007fc0e21502e0:   0000000000000000 0000000000000000
+0x00007fc0e21502f0:   0000000000000000 00000000415ba258
+0x00007fc0e2150300:   0000000000000000 0000000041591590
+0x00007fc0e2150310:   0000000041857fd0 00000000411609d0
+0x00007fc0e2150320:   0000000000000000 0000000041857fd0
+0x00007fc0e2150330:   0000000041591590 00007fc0d8dc8979
+0x00007fc0e2150340:   0000003000000018 00007fc0e2150430
+0x00007fc0e2150350:   00007fc0e2150360 0000000000000004
+0x00007fc0e2150360:   0000000000000004 0000000799ed8458
+0x00007fc0e2150370:   0000000000000000 000000004197e300
+0x00007fc0e2150380:   00000000ffffffff 00007fc0e2e6dfe8
+0x00007fc0e2150390:   00007fc0e21503c0 00007fc0e2150510
+0x00007fc0e21503a0:   0000000000000004 00007fc0e2adc1c8
+0x00007fc0e21503b0:   000000000000000c 00007fc0e2150510
+0x00007fc0e21503c0:   00007fc0e2150420 00007fc0e28e6fa2
+0x00007fc0e21503d0:   00007fc0e2150530 0000000000000000
+0x00007fc0e21503e0:   0000000041160800 0000000000000000
+0x00007fc0e21503f0:   000000004151b670 00007fc0e2150510
+0x00007fc0e2150400:   00000000411609d0 0000000000000000
+0x00007fc0e2150410:   0000000041857fd0 00007fc0e2150510
+0x00007fc0e2150420:   000000004197e300 00007fc0d921e195
+0x00007fc0e2150430:   00000006c0c33b58 00000006c0c327d0
+0x00007fc0e2150440:   00007fc0e21504e8 0000000000000000
+0x00007fc0e2150450:   00000006c0c327d0 00007fc0e2150538
+0x00007fc0e2150460:   0000000041160800 00007fc0dbbacd6e
+0x00007fc0e2150470:   00007fc0ffffffff 00007fc0e2150500
+0x00007fc0e2150480:   00007fc0e2150401 0000000000000020 
+
+Instructions: (pc=0x00007fc0d8dc8695)
+0x00007fc0d8dc8675:   8e b0 01 00 00 4c 89 f1 4c 89 fe 4c 89 ef e8 c8
+0x00007fc0d8dc8685:   f2 ff ff 48 8b 7c 24 50 e8 ae 1e e5 ff 48 89 ef
+0x00007fc0d8dc8695:   48 8b 50 30 49 89 c0 b9 08 00 00 00 31 c0 f3 48
+0x00007fc0d8dc86a5:   ab 48 89 d0 89 c6 0f b6 08 29 d6 84 c9 74 6f 83 
+
+Register to memory mapping:
+
+RAX=0x0000000000000000 is an unknown value
+RBX=0x00007fc0e2150340 is pointing into the stack for thread: 0x0000000041160800
+RCX=0x00007fc0e2151700 is pointing into the stack for thread: 0x0000000041160800
+RDX=0x00007fc0e375c280: <offset 0x217280> in /lib/libpthread.so.0 at 0x00007fc0e3545000
+RSP=0x00007fc0e2150290 is pointing into the stack for thread: 0x0000000041160800
+RBP=0x00007fc0e21502a0 is pointing into the stack for thread: 0x0000000041160800
+RSI=0x0000000000000000 is an unknown value
+RDI=0x00007fc0e21502a0 is pointing into the stack for thread: 0x0000000041160800
+R8 =0x000000004133e140 is an unknown value
+R9 =0x0000000000000001 is an unknown value
+R10=0x0000000000000001 is an unknown value
+R11=0x0000000000000000 is an unknown value
+R12=0x00007fc0d8f3d5a0: <offset 0x38f5a0> in /usr/lib/libgtk-x11-2.0.so.0 at 0x00007fc0d8bae000
+R13=0x0000000041591590 is an unknown value
+R14=0x00007fc0e21502e0 is pointing into the stack for thread: 0x0000000041160800
+R15=0x0000000041857fd0 is an unknown value
+
+
+Stack: [0x00007fc0e2051000,0x00007fc0e2152000],  sp=0x00007fc0e2150290,  free space=1020k
+Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
+C  [libgtk-x11-2.0.so.0+0x21a695]  __float128+0xf5
+
+Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
+j  org.eclipse.swt.internal.gtk.OS._gtk_tree_model_get(JJI[II)V+0
+j  org.eclipse.swt.internal.gtk.OS.gtk_tree_model_get(JJI[II)V+15
+j  org.eclipse.swt.widgets.Tree.clear(JIZ)V+36
+j  org.eclipse.swt.widgets.Tree.clear(IZ)V+8
+j  gZFS.gui$2.handleEvent(Lorg/eclipse/swt/widgets/Event;)V+43
+j  org.eclipse.swt.widgets.EventTable.sendEvent(Lorg/eclipse/swt/widgets/Event;)V+77
+j  org.eclipse.swt.widgets.Widget.sendEvent(Lorg/eclipse/swt/widgets/Event;)V+25
+j  org.eclipse.swt.widgets.Display.runDeferredEvents()Z+96
+j  org.eclipse.swt.widgets.Display.readAndDispatch()Z+46
+j  gZFS.gui.open()V+30
+j  gZFS.gui.main([Ljava/lang/String;)V+9
+v  ~StubRoutines::call_stub
+
+---------------  P R O C E S S  ---------------
+
+Java Threads: ( => current thread )
+  0x00000000412b1000 JavaThread "AWT-XAWT" daemon [_thread_in_native, id=14550, stack(0x00007fc0cdb29000,0x00007fc0cdc2a000)]
+  0x0000000041a06800 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=14549, stack(0x00007fc0cdc2a000,0x00007fc0cdd2b000)]
+  0x00000000419f3000 JavaThread "Connect thread psittacus.ens-lyon.fr session" [_thread_in_native, id=14548, stack(0x00007fc0ce1e6000,0x00007fc0ce2e7000)]
+  0x00000000415ec000 JavaThread "Connect thread psittacus.ens-lyon.fr session" [_thread_in_native, id=14504, stack(0x00007fc0ce700000,0x00007fc0ce801000)]
+  0x00007fc0d4024000 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=14502, stack(0x00007fc0d98e3000,0x00007fc0d99e4000)]
+  0x00007fc0d4021800 JavaThread "C2 CompilerThread1" daemon [_thread_blocked, id=14501, stack(0x00007fc0d99e4000,0x00007fc0d9ae5000)]
+  0x00007fc0d401e800 JavaThread "C2 CompilerThread0" daemon [_thread_blocked, id=14500, stack(0x00007fc0d9ae5000,0x00007fc0d9be6000)]
+  0x00007fc0d401c800 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=14499, stack(0x00007fc0d9be6000,0x00007fc0d9ce7000)]
+  0x00007fc0d4001000 JavaThread "Finalizer" daemon [_thread_blocked, id=14498, stack(0x00007fc0d9ce7000,0x00007fc0d9de8000)]
+  0x00000000411c6000 JavaThread "Reference Handler" daemon [_thread_blocked, id=14497, stack(0x00007fc0d9de8000,0x00007fc0d9ee9000)]
+=>0x0000000041160800 JavaThread "main" [_thread_in_native, id=14491, stack(0x00007fc0e2051000,0x00007fc0e2152000)]
+
+Other Threads:
+  0x00000000411bf000 VMThread [stack: 0x00007fc0d9ee9000,0x00007fc0d9fea000] [id=14496]
+  0x00007fc0d4037000 WatcherThread [stack: 0x00007fc0d97e2000,0x00007fc0d98e3000] [id=14503]
+
+VM state:not at safepoint (normal execution)
+
+VM Mutex/Monitor currently owned by a thread: None
+
+Heap
+ PSYoungGen      total 93952K, used 46280K [0x00000007972b0000, 0x000000079db80000, 0x0000000800000000)
+  eden space 80576K, 57% used [0x00000007972b0000,0x0000000799fe20b0,0x000000079c160000)
+  from space 13376K, 0% used [0x000000079ce70000,0x000000079ce70000,0x000000079db80000)
+  to   space 13376K, 0% used [0x000000079c160000,0x000000079c160000,0x000000079ce70000)
+ PSOldGen        total 214656K, used 0K [0x00000006c5800000, 0x00000006d29a0000, 0x00000007972b0000)
+  object space 214656K, 0% used [0x00000006c5800000,0x00000006c5800000,0x00000006d29a0000)
+ PSPermGen       total 21248K, used 17821K [0x00000006c0600000, 0x00000006c1ac0000, 0x00000006c5800000)
+  object space 21248K, 83% used [0x00000006c0600000,0x00000006c17677d0,0x00000006c1ac0000)
+
+Code Cache  [0x00007fc0dbb9c000, 0x00007fc0dbe0c000, 0x00007fc0deb9c000)
+ total_blobs=737 nmethods=154 adapters=537 free_code_cache=49391360 largest_free_block=448
+
+Dynamic libraries:
+40000000-40009000 r-xp 00000000 08:02 6034364                            /usr/lib/jvm/java-6-sun-1.6.0.26/jre/bin/java
+40108000-4010a000 rwxp 00008000 08:02 6034364                            /usr/lib/jvm/java-6-sun-1.6.0.26/jre/bin/java
+4113f000-41ca4000 rwxp 00000000 00:00 0                                  [heap]
+6c0600000-6c1ac0000 rwxp 00000000 00:00 0 
+6c1ac0000-6c5800000 rwxp 00000000 00:00 0 
+6c5800000-6d29a0000 rwxp 00000000 00:00 0 
+6d29a0000-7972b0000 rwxp 00000000 00:00 0 
+7972b0000-79db80000 rwxp 00000000 00:00 0 
+79db80000-800000000 rwxp 00000000 00:00 0 
+7fc0cd6c2000-7fc0cd6ca000 r-xs 00115000 08:02 5903511                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/resources.jar
+7fc0cd6ca000-7fc0cd6ce000 r-xs 000cb000 08:02 6034318                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/ext/localedata.jar
+7fc0cd6ce000-7fc0cd75d000 r-xp 00000000 08:02 5900249                    /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
+7fc0cd75d000-7fc0cd76e000 r-xs 00000000 08:02 5901036                    /usr/share/fonts/type1/gsfonts/n019024l.pfb
+7fc0cd76e000-7fc0cd789000 r-xs 00000000 08:02 5901060                    /usr/share/fonts/type1/gsfonts/p052003l.pfb
+7fc0cd789000-7fc0cd7a2000 r-xs 00000000 08:02 5901062                    /usr/share/fonts/type1/gsfonts/n021003l.pfb
+7fc0cd7a2000-7fc0cd7b5000 r-xs 00000000 08:02 5901090                    /usr/share/fonts/type1/gsfonts/n019064l.pfb
+7fc0cd7b5000-7fc0cd7c1000 r-xs 00000000 08:02 5901053                    /usr/share/fonts/type1/gsfonts/d050000l.pfb
+7fc0cd7c1000-7fc0cd7d5000 r-xs 00000000 08:02 5901086                    /usr/share/fonts/type1/gsfonts/n019003l.pfb
+7fc0cd7d5000-7fc0cd7e6000 r-xs 00000000 08:02 5901057                    /usr/share/fonts/type1/gsfonts/n019023l.pfb
+7fc0cd7e6000-7fc0cd7ff000 r-xs 00000000 08:02 5901076                    /usr/share/fonts/type1/gsfonts/n022004l.pfb
+7fc0cd7ff000-7fc0cd80f000 r-xs 00000000 08:02 5901123                    /usr/share/fonts/type1/gsfonts/a010033l.pfb
+7fc0cd80f000-7fc0cd81f000 r-xs 00000000 08:02 5901093                    /usr/share/fonts/type1/gsfonts/a010015l.pfb
+7fc0cd81f000-7fc0cd831000 r-xs 00000000 08:02 5901072                    /usr/share/fonts/type1/gsfonts/n019004l.pfb
+7fc0cd831000-7fc0cd84a000 r-xs 00000000 08:02 5901125                    /usr/share/fonts/type1/gsfonts/b018012l.pfb
+7fc0cd84a000-7fc0cd860000 r-xs 00000000 08:02 5901039                    /usr/share/fonts/type1/gsfonts/n021024l.pfb
+7fc0cd860000-7fc0cd872000 r-xs 00000000 08:02 5901107                    /usr/share/fonts/type1/gsfonts/n019044l.pfb
+7fc0cd872000-7fc0cd88b000 r-xs 00000000 08:02 5901046                    /usr/share/fonts/type1/gsfonts/n021004l.pfb
+7fc0cd88b000-7fc0cd8a2000 r-xs 00000000 08:02 5901081                    /usr/share/fonts/type1/gsfonts/n021023l.pfb
+7fc0cd8a2000-7fc0cd8b4000 r-xs 00000000 08:02 5901048                    /usr/share/fonts/type1/gsfonts/n019043l.pfb
+7fc0cd8b4000-7fc0cd8c5000 r-xs 00000000 08:02 5901056                    /usr/share/fonts/type1/gsfonts/a010035l.pfb
+7fc0cd8c5000-7fc0cd8d5000 r-xs 00000000 08:02 5901109                    /usr/share/fonts/type1/gsfonts/a010013l.pfb
+7fc0cd8d5000-7fc0cd8f0000 r-xs 00000000 08:02 5901102                    /usr/share/fonts/type1/gsfonts/p052004l.pfb
+7fc0cd8f0000-7fc0cd902000 r-xs 00000000 08:02 5901043                    /usr/share/fonts/type1/gsfonts/b018035l.pfb
+7fc0cd902000-7fc0cd918000 r-xs 00000000 08:02 5901050                    /usr/share/fonts/type1/gsfonts/n022024l.pfb
+7fc0cd918000-7fc0cd933000 r-xs 00000000 08:02 5901137                    /usr/share/fonts/type1/gsfonts/c059016l.pfb
+7fc0cd933000-7fc0cd94b000 r-xs 00000000 08:02 5901074                    /usr/share/fonts/type1/gsfonts/c059036l.pfb
+7fc0cd94b000-7fc0cd960000 r-xs 00000000 08:02 5901041                    /usr/share/fonts/type1/gsfonts/b018032l.pfb
+7fc0cd960000-7fc0cd976000 r-xs 00000000 08:02 5901108                    /usr/share/fonts/type1/gsfonts/n022023l.pfb
+7fc0cd976000-7fc0cd98d000 r-xs 00000000 08:02 5901084                    /usr/share/fonts/type1/gsfonts/z003034l.pfb
+7fc0cd98d000-7fc0cd9a5000 r-xs 00000000 08:02 5901096                    /usr/share/fonts/type1/gsfonts/c059033l.pfb
+7fc0cd9a5000-7fc0cd9b8000 r-xs 00000000 08:02 5901118                    /usr/share/fonts/type1/gsfonts/b018015l.pfb
+7fc0cd9b8000-7fc0cd9c1000 r-xs 00000000 08:02 5901092                    /usr/share/fonts/type1/gsfonts/s050000l.pfb
+7fc0cd9c1000-7fc0cd9dc000 r-xs 00000000 08:02 5901082                    /usr/share/fonts/type1/gsfonts/p052023l.pfb
+7fc0cd9dc000-7fc0cd9ed000 r-xs 00000000 08:02 5901101                    /usr/share/fonts/type1/gsfonts/n019063l.pfb
+7fc0cd9ed000-7fc0cda05000 r-xs 00000000 08:02 5901078                    /usr/share/fonts/type1/gsfonts/n022003l.pfb
+7fc0cda05000-7fc0cda21000 r-xs 00000000 08:02 5901047                    /usr/share/fonts/type1/gsfonts/p052024l.pfb
+7fc0cda21000-7fc0cda28000 r-xp 00000000 08:02 6034356                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnio.so
+7fc0cda28000-7fc0cdb27000 ---p 00007000 08:02 6034356                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnio.so
+7fc0cdb27000-7fc0cdb29000 rwxp 00006000 08:02 6034356                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnio.so
+7fc0cdb29000-7fc0cdb2c000 ---p 00000000 00:00 0 
+7fc0cdb2c000-7fc0cdc2a000 rwxp 00000000 00:00 0 
+7fc0cdc2a000-7fc0cdc2d000 ---p 00000000 00:00 0 
+7fc0cdc2d000-7fc0cdd2b000 rwxp 00000000 00:00 0 
+7fc0cdd2b000-7fc0cdda4000 r-xp 00000000 08:02 6034357                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libfontmanager.so
+7fc0cdda4000-7fc0cdea3000 ---p 00079000 08:02 6034357                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libfontmanager.so
+7fc0cdea3000-7fc0cdeb8000 rwxp 00078000 08:02 6034357                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libfontmanager.so
+7fc0cdeb8000-7fc0cdec9000 rwxp 00000000 00:00 0 
+7fc0cdec9000-7fc0cdf0b000 r-xp 00000000 08:02 6426975                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/xawt/libmawt.so
+7fc0cdf0b000-7fc0ce00a000 ---p 00042000 08:02 6426975                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/xawt/libmawt.so
+7fc0ce00a000-7fc0ce016000 rwxp 00041000 08:02 6426975                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/xawt/libmawt.so
+7fc0ce016000-7fc0ce017000 rwxp 00000000 00:00 0 
+7fc0ce017000-7fc0ce0a9000 r-xp 00000000 08:02 6034342                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libawt.so
+7fc0ce0a9000-7fc0ce1a8000 ---p 00092000 08:02 6034342                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libawt.so
+7fc0ce1a8000-7fc0ce1c2000 rwxp 00091000 08:02 6034342                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libawt.so
+7fc0ce1c2000-7fc0ce1e6000 rwxp 00000000 00:00 0 
+7fc0ce1e6000-7fc0ce1e9000 ---p 00000000 00:00 0 
+7fc0ce1e9000-7fc0ce2e7000 rwxp 00000000 00:00 0 
+7fc0ce2e7000-7fc0ce2f4000 r-xp 00000000 08:02 5903965                    /home/kreverch/.swt/lib/linux/x86_64/libswt-cairo-gtk-4332.so
+7fc0ce2f4000-7fc0ce4f3000 ---p 0000d000 08:02 5903965                    /home/kreverch/.swt/lib/linux/x86_64/libswt-cairo-gtk-4332.so
+7fc0ce4f3000-7fc0ce4f4000 rwxp 0000c000 08:02 5903965                    /home/kreverch/.swt/lib/linux/x86_64/libswt-cairo-gtk-4332.so
+7fc0ce4f4000-7fc0ce4ff000 r-xp 00000000 08:02 5904040                    /home/kreverch/.swt/lib/linux/x86_64/libswt-atk-gtk-4332.so
+7fc0ce4ff000-7fc0ce6ff000 ---p 0000b000 08:02 5904040                    /home/kreverch/.swt/lib/linux/x86_64/libswt-atk-gtk-4332.so
+7fc0ce6ff000-7fc0ce700000 rwxp 0000b000 08:02 5904040                    /home/kreverch/.swt/lib/linux/x86_64/libswt-atk-gtk-4332.so
+7fc0ce700000-7fc0ce703000 ---p 00000000 00:00 0 
+7fc0ce703000-7fc0ce801000 rwxp 00000000 00:00 0 
+7fc0ce801000-7fc0ce814000 r-xp 00000000 08:02 6034334                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnet.so
+7fc0ce814000-7fc0ce915000 ---p 00013000 08:02 6034334                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnet.so
+7fc0ce915000-7fc0ce918000 rwxp 00014000 08:02 6034334                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnet.so
+7fc0ce918000-7fc0ce91a000 r-xp 00000000 08:02 5900774                    /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
+7fc0ce91a000-7fc0ceb19000 ---p 00002000 08:02 5900774                    /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
+7fc0ceb19000-7fc0ceb1a000 rwxp 00001000 08:02 5900774                    /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
+7fc0ceb1a000-7fc0ceb45000 r-xp 00000000 08:02 5901881                    /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
+7fc0ceb45000-7fc0ced45000 ---p 0002b000 08:02 5901881                    /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
+7fc0ced45000-7fc0ced46000 rwxp 0002b000 08:02 5901881                    /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
+7fc0ced46000-7fc0ced4f000 r-xp 00000000 08:02 5506563                    /usr/lib/libltdl.so.7.2.1
+7fc0ced4f000-7fc0cef4e000 ---p 00009000 08:02 5506563                    /usr/lib/libltdl.so.7.2.1
+7fc0cef4e000-7fc0cef4f000 rwxp 00008000 08:02 5506563                    /usr/lib/libltdl.so.7.2.1
+7fc0cef4f000-7fc0cef5d000 r-xp 00000000 08:02 5506572                    /usr/lib/libtdb.so.1.2.1
+7fc0cef5d000-7fc0cf15c000 ---p 0000e000 08:02 5506572                    /usr/lib/libtdb.so.1.2.1
+7fc0cf15c000-7fc0cf15d000 rwxp 0000d000 08:02 5506572                    /usr/lib/libtdb.so.1.2.1
+7fc0cf15d000-7fc0cf163000 r-xp 00000000 08:02 5506568                    /usr/lib/libogg.so.0.7.0
+7fc0cf163000-7fc0cf362000 ---p 00006000 08:02 5506568                    /usr/lib/libogg.so.0.7.0
+7fc0cf362000-7fc0cf363000 rwxp 00005000 08:02 5506568                    /usr/lib/libogg.so.0.7.0
+7fc0cf363000-7fc0cf38e000 r-xp 00000000 08:02 5506727                    /usr/lib/libvorbis.so.0.4.4
+7fc0cf38e000-7fc0cf58e000 ---p 0002b000 08:02 5506727                    /usr/lib/libvorbis.so.0.4.4
+7fc0cf58e000-7fc0cf58f000 rwxp 0002b000 08:02 5506727                    /usr/lib/libvorbis.so.0.4.4
+7fc0cf58f000-7fc0cf596000 r-xp 00000000 08:02 5506733                    /usr/lib/libvorbisfile.so.3.3.2
+7fc0cf596000-7fc0cf795000 ---p 00007000 08:02 5506733                    /usr/lib/libvorbisfile.so.3.3.2
+7fc0cf795000-7fc0cf796000 rwxp 00006000 08:02 5506733                    /usr/lib/libvorbisfile.so.3.3.2
+7fc0cf796000-7fc0cf7a5000 r-xp 00000000 08:02 5506739                    /usr/lib/libcanberra.so.0.2.3
+7fc0cf7a5000-7fc0cf9a5000 ---p 0000f000 08:02 5506739                    /usr/lib/libcanberra.so.0.2.3
+7fc0cf9a5000-7fc0cf9a6000 rwxp 0000f000 08:02 5506739                    /usr/lib/libcanberra.so.0.2.3
+7fc0cf9a6000-7fc0cf9aa000 r-xp 00000000 08:02 5510036                    /usr/lib/libcanberra-gtk.so.0.1.6
+7fc0cf9aa000-7fc0cfba9000 ---p 00004000 08:02 5510036                    /usr/lib/libcanberra-gtk.so.0.1.6
+7fc0cfba9000-7fc0cfbaa000 rwxp 00003000 08:02 5510036                    /usr/lib/libcanberra-gtk.so.0.1.6
+7fc0cfbaa000-7fc0cfbaf000 r-xp 00000000 08:02 5645712                    /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
+7fc0cfbaf000-7fc0cfdaf000 ---p 00005000 08:02 5645712                    /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
+7fc0cfdaf000-7fc0cfdb0000 rwxp 00005000 08:02 5645712                    /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
+7fc0cfdb0000-7fc0cfdb5000 r-xp 00000000 08:02 5513397                    /usr/lib/libXdmcp.so.6.0.0
+7fc0cfdb5000-7fc0cffb4000 ---p 00005000 08:02 5513397                    /usr/lib/libXdmcp.so.6.0.0
+7fc0cffb4000-7fc0cffb5000 rwxp 00004000 08:02 5513397                    /usr/lib/libXdmcp.so.6.0.0
+7fc0cffb5000-7fc0cffb7000 r-xp 00000000 08:02 5513395                    /usr/lib/libXau.so.6.0.0
+7fc0cffb7000-7fc0d01b7000 ---p 00002000 08:02 5513395                    /usr/lib/libXau.so.6.0.0
+7fc0d01b7000-7fc0d01b8000 rwxp 00002000 08:02 5513395                    /usr/lib/libXau.so.6.0.0
+7fc0d01b8000-7fc0d01de000 r-xp 00000000 08:02 5511573                    /usr/lib/libexpat.so.1.5.2
+7fc0d01de000-7fc0d03de000 ---p 00026000 08:02 5511573                    /usr/lib/libexpat.so.1.5.2
+7fc0d03de000-7fc0d03e0000 rwxp 00026000 08:02 5511573                    /usr/lib/libexpat.so.1.5.2
+7fc0d03e0000-7fc0d03fc000 r-xp 00000000 08:02 5767207                    /lib/libselinux.so.1
+7fc0d03fc000-7fc0d05fb000 ---p 0001c000 08:02 5767207                    /lib/libselinux.so.1
+7fc0d05fb000-7fc0d05fc000 r-xp 0001b000 08:02 5767207                    /lib/libselinux.so.1
+7fc0d05fc000-7fc0d05fd000 rwxp 0001c000 08:02 5767207                    /lib/libselinux.so.1
+7fc0d05fd000-7fc0d05fe000 rwxp 00000000 00:00 0 
+7fc0d05fe000-7fc0d0605000 r-xp 00000000 08:02 5524680                    /usr/lib/libxcb-render.so.0.0.0
+7fc0d0605000-7fc0d0805000 ---p 00007000 08:02 5524680                    /usr/lib/libxcb-render.so.0.0.0
+7fc0d0805000-7fc0d0806000 rwxp 00007000 08:02 5524680                    /usr/lib/libxcb-render.so.0.0.0
+7fc0d0806000-7fc0d0809000 r-xp 00000000 08:02 5505648                    /usr/lib/libxcb-render-util.so.0.0.0
+7fc0d0809000-7fc0d0a08000 ---p 00003000 08:02 5505648                    /usr/lib/libxcb-render-util.so.0.0.0
+7fc0d0a08000-7fc0d0a09000 rwxp 00002000 08:02 5505648                    /usr/lib/libxcb-render-util.so.0.0.0
+7fc0d0a09000-7fc0d0a2e000 r-xp 00000000 08:02 5767606                    /lib/libpng12.so.0.44.0
+7fc0d0a2e000-7fc0d0c2e000 ---p 00025000 08:02 5767606                    /lib/libpng12.so.0.44.0
+7fc0d0c2e000-7fc0d0c2f000 rwxp 00025000 08:02 5767606                    /lib/libpng12.so.0.44.0
+7fc0d0c2f000-7fc0d0c85000 r-xp 00000000 08:02 5505643                    /usr/lib/libpixman-1.so.0.16.4
+7fc0d0c85000-7fc0d0e84000 ---p 00056000 08:02 5505643                    /usr/lib/libpixman-1.so.0.16.4
+7fc0d0e84000-7fc0d0e87000 rwxp 00055000 08:02 5505643                    /usr/lib/libpixman-1.so.0.16.4
+7fc0d0e87000-7fc0d0ea3000 r-xp 00000000 08:02 5515046                    /usr/lib/libxcb.so.1.1.0
+7fc0d0ea3000-7fc0d10a2000 ---p 0001c000 08:02 5515046                    /usr/lib/libxcb.so.1.1.0
+7fc0d10a2000-7fc0d10a3000 rwxp 0001b000 08:02 5515046                    /usr/lib/libxcb.so.1.1.0
+7fc0d10a3000-7fc0d10ac000 r-xp 00000000 08:02 5505651                    /usr/lib/libXcursor.so.1.0.2
+7fc0d10ac000-7fc0d12ac000 ---p 00009000 08:02 5505651                    /usr/lib/libXcursor.so.1.0.2
+7fc0d12ac000-7fc0d12ad000 rwxp 00009000 08:02 5505651                    /usr/lib/libXcursor.so.1.0.2
+7fc0d12ad000-7fc0d12b5000 r-xp 00000000 08:02 5509983                    /usr/lib/libXrandr.so.2.2.0
+7fc0d12b5000-7fc0d14b4000 ---p 00008000 08:02 5509983                    /usr/lib/libXrandr.so.2.2.0
+7fc0d14b4000-7fc0d14b5000 rwxp 00007000 08:02 5509983                    /usr/lib/libXrandr.so.2.2.0
+7fc0d14b5000-7fc0d14b7000 r-xp 00000000 08:02 5646610                    /usr/lib/nx/X11/libNX_Xinerama.so.1.0
+7fc0d14b7000-7fc0d16b7000 ---p 00002000 08:02 5646610                    /usr/lib/nx/X11/libNX_Xinerama.so.1.0
+7fc0d16b7000-7fc0d16b8000 rwxp 00002000 08:02 5646610                    /usr/lib/nx/X11/libNX_Xinerama.so.1.0
+7fc0d16b8000-7fc0d16c1000 r-xp 00000000 08:02 5505647                    /usr/lib/libXrender.so.1.3.0
+7fc0d16c1000-7fc0d18c1000 ---p 00009000 08:02 5505647                    /usr/lib/libXrender.so.1.3.0
+7fc0d18c1000-7fc0d18c2000 rwxp 00009000 08:02 5505647                    /usr/lib/libXrender.so.1.3.0
+7fc0d18c2000-7fc0d18d1000 r-xp 00000000 08:02 5509977                    /usr/lib/libXi.so.6.1.0
+7fc0d18d1000-7fc0d1ad0000 ---p 0000f000 08:02 5509977                    /usr/lib/libXi.so.6.1.0
+7fc0d1ad0000-7fc0d1ad1000 rwxp 0000e000 08:02 5509977                    /usr/lib/libXi.so.6.1.0
+7fc0d1ad1000-7fc0d1ae2000 r-xp 00000000 08:02 5513404                    /usr/lib/libXext.so.6.4.0
+7fc0d1ae2000-7fc0d1ce2000 ---p 00011000 08:02 5513404                    /usr/lib/libXext.so.6.4.0
+7fc0d1ce2000-7fc0d1ce3000 rwxp 00011000 08:02 5513404                    /usr/lib/libXext.so.6.4.0
+7fc0d1ce3000-7fc0d1d13000 r-xp 00000000 08:02 5770622                    /lib/libpcre.so.3.12.1
+7fc0d1d13000-7fc0d1f12000 ---p 00030000 08:02 5770622                    /lib/libpcre.so.3.12.1
+7fc0d1f12000-7fc0d1f13000 rwxp 0002f000 08:02 5770622                    /lib/libpcre.so.3.12.1
+7fc0d1f13000-7fc0d1fee000 r-xp 00000000 08:02 5767604                    /lib/libglib-2.0.so.0.2400.2
+7fc0d1fee000-7fc0d21ed000 ---p 000db000 08:02 5767604                    /lib/libglib-2.0.so.0.2400.2
+7fc0d21ed000-7fc0d21ef000 rwxp 000da000 08:02 5767604                    /lib/libglib-2.0.so.0.2400.2
+7fc0d21ef000-7fc0d21f2000 r-xp 00000000 08:02 5505631                    /usr/lib/libgmodule-2.0.so.0.2400.2
+7fc0d21f2000-7fc0d23f1000 ---p 00003000 08:02 5505631                    /usr/lib/libgmodule-2.0.so.0.2400.2
+7fc0d23f1000-7fc0d23f2000 rwxp 00002000 08:02 5505631                    /usr/lib/libgmodule-2.0.so.0.2400.2
+7fc0d23f2000-7fc0d2437000 r-xp 00000000 08:02 5505630                    /usr/lib/libgobject-2.0.so.0.2400.2
+7fc0d2437000-7fc0d2637000 ---p 00045000 08:02 5505630                    /usr/lib/libgobject-2.0.so.0.2400.2
+7fc0d2637000-7fc0d2639000 rwxp 00045000 08:02 5505630                    /usr/lib/libgobject-2.0.so.0.2400.2
+7fc0d2639000-7fc0d266c000 r-xp 00000000 08:02 5505641                    /usr/lib/libfontconfig.so.1.4.4
+7fc0d266c000-7fc0d286c000 ---p 00033000 08:02 5505641                    /usr/lib/libfontconfig.so.1.4.4
+7fc0d286c000-7fc0d286e000 rwxp 00033000 08:02 5505641                    /usr/lib/libfontconfig.so.1.4.4
+7fc0d286e000-7fc0d28f1000 r-xp 00000000 08:02 5511567                    /usr/lib/libfreetype.so.6.6.0
+7fc0d28f1000-7fc0d2af0000 ---p 00083000 08:02 5511567                    /usr/lib/libfreetype.so.6.6.0
+7fc0d2af0000-7fc0d2af6000 rwxp 00082000 08:02 5511567                    /usr/lib/libfreetype.so.6.6.0
+7fc0d2af6000-7fc0d2b3f000 r-xp 00000000 08:02 5509962                    /usr/lib/libpango-1.0.so.0.2800.3
+7fc0d2b3f000-7fc0d2d3f000 ---p 00049000 08:02 5509962                    /usr/lib/libpango-1.0.so.0.2800.3
+7fc0d2d3f000-7fc0d2d42000 rwxp 00049000 08:02 5509962                    /usr/lib/libpango-1.0.so.0.2800.3
+7fc0d2d42000-7fc0d2d6b000 r-xp 00000000 08:02 5509958                    /usr/lib/libpangoft2-1.0.so.0.2800.3
+7fc0d2d6b000-7fc0d2f6b000 ---p 00029000 08:02 5509958                    /usr/lib/libpangoft2-1.0.so.0.2800.3
+7fc0d2f6b000-7fc0d2f6c000 rwxp 00029000 08:02 5509958                    /usr/lib/libpangoft2-1.0.so.0.2800.3
+7fc0d2f6c000-7fc0d301a000 r-xp 00000000 08:02 5505628                    /usr/lib/libgio-2.0.so.0.2400.2
+7fc0d301a000-7fc0d321a000 ---p 000ae000 08:02 5505628                    /usr/lib/libgio-2.0.so.0.2400.2
+7fc0d321a000-7fc0d321d000 rwxp 000ae000 08:02 5505628                    /usr/lib/libgio-2.0.so.0.2400.2
+7fc0d321d000-7fc0d321e000 rwxp 00000000 00:00 0 
+7fc0d321e000-7fc0d3299000 r-xp 00000000 08:02 5505652                    /usr/lib/libcairo.so.2.10800.10
+7fc0d3299000-7fc0d3498000 ---p 0007b000 08:02 5505652                    /usr/lib/libcairo.so.2.10800.10
+7fc0d3498000-7fc0d349b000 rwxp 0007a000 08:02 5505652                    /usr/lib/libcairo.so.2.10800.10
+7fc0d349b000-7fc0d34ba000 r-xp 00000000 08:02 5505638                    /usr/lib/libatk-1.0.so.0.3009.1
+7fc0d34ba000-7fc0d36b9000 ---p 0001f000 08:02 5505638                    /usr/lib/libatk-1.0.so.0.3009.1
+7fc0d36b9000-7fc0d36bc000 rwxp 0001e000 08:02 5505638                    /usr/lib/libatk-1.0.so.0.3009.1
+7fc0d36bc000-7fc0d36c1000 r-xp 00000000 08:02 5513406                    /usr/lib/libXfixes.so.3.1.0
+7fc0d36c1000-7fc0d38c0000 ---p 00005000 08:02 5513406                    /usr/lib/libXfixes.so.3.1.0
+7fc0d38c0000-7fc0d38c1000 rwxp 00004000 08:02 5513406                    /usr/lib/libXfixes.so.3.1.0
+7fc0d38c1000-7fc0d38c3000 r-xp 00000000 08:02 5509978                    /usr/lib/libXdamage.so.1.1.0
+7fc0d38c3000-7fc0d3ac2000 ---p 00002000 08:02 5509978                    /usr/lib/libXdamage.so.1.1.0
+7fc0d3ac2000-7fc0d3ac3000 rwxp 00001000 08:02 5509978                    /usr/lib/libXdamage.so.1.1.0
+7fc0d3ac3000-7fc0d3ac5000 r-xp 00000000 08:02 5509974                    /usr/lib/libXcomposite.so.1.0.0
+7fc0d3ac5000-7fc0d3cc4000 ---p 00002000 08:02 5509974                    /usr/lib/libXcomposite.so.1.0.0
+7fc0d3cc4000-7fc0d3cc5000 rwxp 00001000 08:02 5509974                    /usr/lib/libXcomposite.so.1.0.0
+7fc0d3cc5000-7fc0d3dfa000 r-xp 00000000 08:02 5513401                    /usr/lib/libX11.so.6.3.0
+7fc0d3dfa000-7fc0d3ffa000 ---p 00135000 08:02 5513401                    /usr/lib/libX11.so.6.3.0
+7fc0d3ffa000-7fc0d4000000 rwxp 00135000 08:02 5513401                    /usr/lib/libX11.so.6.3.0
+7fc0d4000000-7fc0d49fd000 rwxp 00000000 00:00 0 
+7fc0d49fd000-7fc0d8000000 ---p 00000000 00:00 0 
+7fc0d800a000-7fc0d8024000 r-xs 00000000 08:02 5901110                    /usr/share/fonts/type1/gsfonts/c059013l.pfb
+7fc0d8024000-7fc0d802b000 r-xs 00094000 08:02 5903460                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/jsse.jar
+7fc0d802b000-7fc0d80c6000 r-xp 00000000 08:02 5900244                    /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
+7fc0d80c6000-7fc0d80cf000 r-xs 00000000 08:02 7477927                    /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-le64.cache-3
+7fc0d80cf000-7fc0d80db000 r-xp 00000000 08:02 5509960                    /usr/lib/libpangocairo-1.0.so.0.2800.3
+7fc0d80db000-7fc0d82da000 ---p 0000c000 08:02 5509960                    /usr/lib/libpangocairo-1.0.so.0.2800.3
+7fc0d82da000-7fc0d82db000 rwxp 0000b000 08:02 5509960                    /usr/lib/libpangocairo-1.0.so.0.2800.3
+7fc0d82db000-7fc0d8383000 r-xp 00000000 08:02 5510029                    /usr/lib/libgdk-x11-2.0.so.0.2000.1
+7fc0d8383000-7fc0d8583000 ---p 000a8000 08:02 5510029                    /usr/lib/libgdk-x11-2.0.so.0.2000.1
+7fc0d8583000-7fc0d8588000 rwxp 000a8000 08:02 5510029                    /usr/lib/libgdk-x11-2.0.so.0.2000.1
+7fc0d8588000-7fc0d85a3000 r-xp 00000000 08:02 5510026                    /usr/lib/libgdk_pixbuf-2.0.so.0.2000.1
+7fc0d85a3000-7fc0d87a3000 ---p 0001b000 08:02 5510026                    /usr/lib/libgdk_pixbuf-2.0.so.0.2000.1
+7fc0d87a3000-7fc0d87a4000 rwxp 0001b000 08:02 5510026                    /usr/lib/libgdk_pixbuf-2.0.so.0.2000.1
+7fc0d87a4000-7fc0d87a9000 r-xp 00000000 08:02 5514923                    /usr/lib/libXtst.so.6.1.0
+7fc0d87a9000-7fc0d89a9000 ---p 00005000 08:02 5514923                    /usr/lib/libXtst.so.6.1.0
+7fc0d89a9000-7fc0d89aa000 rwxp 00005000 08:02 5514923                    /usr/lib/libXtst.so.6.1.0
+7fc0d89aa000-7fc0d89ae000 r-xp 00000000 08:02 5505629                    /usr/lib/libgthread-2.0.so.0.2400.2
+7fc0d89ae000-7fc0d8bad000 ---p 00004000 08:02 5505629                    /usr/lib/libgthread-2.0.so.0.2400.2
+7fc0d8bad000-7fc0d8bae000 rwxp 00003000 08:02 5505629                    /usr/lib/libgthread-2.0.so.0.2400.2
+7fc0d8bae000-7fc0d8fc3000 r-xp 00000000 08:02 5510028                    /usr/lib/libgtk-x11-2.0.so.0.2000.1
+7fc0d8fc3000-7fc0d91c2000 ---p 00415000 08:02 5510028                    /usr/lib/libgtk-x11-2.0.so.0.2000.1
+7fc0d91c2000-7fc0d91cd000 rwxp 00414000 08:02 5510028                    /usr/lib/libgtk-x11-2.0.so.0.2000.1
+7fc0d91cd000-7fc0d91cf000 rwxp 00000000 00:00 0 
+7fc0d91cf000-7fc0d9241000 r-xp 00000000 08:02 5903989                    /home/kreverch/.swt/lib/linux/x86_64/libswt-pi-gtk-4332.so
+7fc0d9241000-7fc0d9441000 ---p 00072000 08:02 5903989                    /home/kreverch/.swt/lib/linux/x86_64/libswt-pi-gtk-4332.so
+7fc0d9441000-7fc0d9443000 rwxp 00072000 08:02 5903989                    /home/kreverch/.swt/lib/linux/x86_64/libswt-pi-gtk-4332.so
+7fc0d9443000-7fc0d9446000 rwxp 00000000 00:00 0 
+7fc0d9446000-7fc0d94c4000 r-xp 00000000 08:02 5903988                    /home/kreverch/.swt/lib/linux/x86_64/libswt-gtk-4332.so
+7fc0d94c4000-7fc0d96c3000 ---p 0007e000 08:02 5903988                    /home/kreverch/.swt/lib/linux/x86_64/libswt-gtk-4332.so
+7fc0d96c3000-7fc0d96cb000 rwxp 0007d000 08:02 5903988                    /home/kreverch/.swt/lib/linux/x86_64/libswt-gtk-4332.so
+7fc0d96cb000-7fc0d96cd000 rwxp 00000000 00:00 0 
+7fc0d96cd000-7fc0d96de000 r-xs 00157000 08:02 6298210                    /home/kreverch/workspace/gZFS/jfreechart-1.0.15.jar
+7fc0d96de000-7fc0d96e0000 r-xs 00011000 08:02 6298209                    /home/kreverch/workspace/gZFS/jfreechart-1.0.15-swt.jar
+7fc0d96e0000-7fc0d96e2000 r-xs 00002000 08:02 6298208                    /home/kreverch/workspace/gZFS/jfreechart-1.0.15-experimental.jar
+7fc0d96e2000-7fc0d96e8000 r-xs 00046000 08:02 6298207                    /home/kreverch/workspace/gZFS/jcommon-1.0.18.jar
+7fc0d96e8000-7fc0d96ec000 r-xs 00039000 08:02 6175101                    /home/kreverch/workspace/gZFS/jsch-0.1.50.jar
+7fc0d96ec000-7fc0d96f1000 r-xs 00045000 08:02 6428034                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.ui.forms_3.6.0.v20130517-0139.jar
+7fc0d96f1000-7fc0d973f000 r-xs 008b6000 08:02 6427743                    /home/kreverch/Downloads/eclipse/plugins/com.ibm.icu_50.1.1.v201304230130.jar
+7fc0d973f000-7fc0d9782000 r-xs 00366000 08:02 6427190                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.ui.workbench_3.105.0.v20130529-1406.jar
+7fc0d9782000-7fc0d9795000 r-xs 000e0000 08:02 6427809                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.jface.text_3.8.100.v20130515-1957.jar
+7fc0d9795000-7fc0d97a9000 r-xs 000f9000 08:02 6427961                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.jface_3.9.0.v20130521-1714.jar
+7fc0d97a9000-7fc0d97be000 r-xs 00258000 08:02 6428032                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.swt.gtk.linux.x86_64_3.102.0.v20130605-1544.jar
+7fc0d97be000-7fc0d97c3000 r-xs 00038000 08:02 6427828                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.text_3.5.300.v20130515-1451.jar
+7fc0d97c3000-7fc0d97c5000 r-xs 00010000 08:02 6427672                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.core.runtime_3.9.0.v20130326-1255.jar
+7fc0d97c5000-7fc0d97c8000 r-xs 0002a000 08:02 6427793                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.equinox.registry_3.5.300.v20130327-1442.jar
+7fc0d97c8000-7fc0d97cb000 r-xs 00018000 08:02 6427911                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.equinox.common_3.6.200.v20130402-1505.jar
+7fc0d97cb000-7fc0d97ce000 r-xs 00018000 08:02 6427796                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.core.commands_3.6.100.v20130515-1857.jar
+7fc0d97ce000-7fc0d97e2000 r-xs 00140000 08:02 6427751                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.osgi_3.9.0.v20130529-1710.jar
+7fc0d97e2000-7fc0d97e3000 ---p 00000000 00:00 0 
+7fc0d97e3000-7fc0d98e3000 rwxp 00000000 00:00 0 
+7fc0d98e3000-7fc0d98e6000 ---p 00000000 00:00 0 
+7fc0d98e6000-7fc0d99e4000 rwxp 00000000 00:00 0 
+7fc0d99e4000-7fc0d99e7000 ---p 00000000 00:00 0 
+7fc0d99e7000-7fc0d9ae5000 rwxp 00000000 00:00 0 
+7fc0d9ae5000-7fc0d9ae8000 ---p 00000000 00:00 0 
+7fc0d9ae8000-7fc0d9be6000 rwxp 00000000 00:00 0 
+7fc0d9be6000-7fc0d9be9000 ---p 00000000 00:00 0 
+7fc0d9be9000-7fc0d9ce7000 rwxp 00000000 00:00 0 
+7fc0d9ce7000-7fc0d9cea000 ---p 00000000 00:00 0 
+7fc0d9cea000-7fc0d9de8000 rwxp 00000000 00:00 0 
+7fc0d9de8000-7fc0d9deb000 ---p 00000000 00:00 0 
+7fc0d9deb000-7fc0d9ee9000 rwxp 00000000 00:00 0 
+7fc0d9ee9000-7fc0d9eea000 ---p 00000000 00:00 0 
+7fc0d9eea000-7fc0da523000 rwxp 00000000 00:00 0 
+7fc0da523000-7fc0da6bb000 r-xs 03029000 08:02 5903492                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/rt.jar
+7fc0da6bb000-7fc0da6e3000 rwxp 00000000 00:00 0 
+7fc0da6e3000-7fc0da6e4000 ---p 00000000 00:00 0 
+7fc0da6e4000-7fc0da7e4000 rwxp 00000000 00:00 0 
+7fc0da7e4000-7fc0da7e5000 ---p 00000000 00:00 0 
+7fc0da7e5000-7fc0da8e5000 rwxp 00000000 00:00 0 
+7fc0da8e5000-7fc0da8e6000 ---p 00000000 00:00 0 
+7fc0da8e6000-7fc0da9e6000 rwxp 00000000 00:00 0 
+7fc0da9e6000-7fc0da9e7000 ---p 00000000 00:00 0 
+7fc0da9e7000-7fc0daaf2000 rwxp 00000000 00:00 0 
+7fc0daaf2000-7fc0dab10000 rwxp 00000000 00:00 0 
+7fc0dab10000-7fc0dab79000 rwxp 00000000 00:00 0 
+7fc0dab79000-7fc0db19e000 rwxp 00000000 00:00 0 
+7fc0db19e000-7fc0db1a9000 rwxp 00000000 00:00 0 
+7fc0db1a9000-7fc0db1c7000 rwxp 00000000 00:00 0 
+7fc0db1c7000-7fc0db230000 rwxp 00000000 00:00 0 
+7fc0db230000-7fc0db854000 rwxp 00000000 00:00 0 
+7fc0db854000-7fc0db889000 rwxp 00000000 00:00 0 
+7fc0db889000-7fc0dbb9b000 rwxp 00000000 00:00 0 
+7fc0dbb9b000-7fc0dbe0c000 rwxp 00000000 00:00 0 
+7fc0dbe0c000-7fc0deb9c000 rwxp 00000000 00:00 0 
+7fc0deb9c000-7fc0debaa000 r-xp 00000000 08:02 6034349                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libzip.so
+7fc0debaa000-7fc0decac000 ---p 0000e000 08:02 6034349                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libzip.so
+7fc0decac000-7fc0decaf000 rwxp 00010000 08:02 6034349                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libzip.so
+7fc0decaf000-7fc0decb0000 rwxp 00000000 00:00 0 
+7fc0decb0000-7fc0decb5000 r-xp 00000000 08:02 5767187                    /lib/libnss_dns-2.11.3.so
+7fc0decb5000-7fc0deeb4000 ---p 00005000 08:02 5767187                    /lib/libnss_dns-2.11.3.so
+7fc0deeb4000-7fc0deeb5000 r-xp 00004000 08:02 5767187                    /lib/libnss_dns-2.11.3.so
+7fc0deeb5000-7fc0deeb6000 rwxp 00005000 08:02 5767187                    /lib/libnss_dns-2.11.3.so
+7fc0deeb6000-7fc0deeb8000 r-xp 00000000 08:02 5768618                    /lib/libnss_mdns4_minimal.so.2
+7fc0deeb8000-7fc0df0b7000 ---p 00002000 08:02 5768618                    /lib/libnss_mdns4_minimal.so.2
+7fc0df0b7000-7fc0df0b8000 rwxp 00001000 08:02 5768618                    /lib/libnss_mdns4_minimal.so.2
+7fc0df0b8000-7fc0df0bb000 r-xp 00000000 08:02 5512254                    /usr/lib/libgpg-error.so.0.4.0
+7fc0df0bb000-7fc0df2ba000 ---p 00003000 08:02 5512254                    /usr/lib/libgpg-error.so.0.4.0
+7fc0df2ba000-7fc0df2bb000 rwxp 00002000 08:02 5512254                    /usr/lib/libgpg-error.so.0.4.0
+7fc0df2bb000-7fc0df32f000 r-xp 00000000 08:02 5508521                    /usr/lib/libgcrypt.so.11.5.3
+7fc0df32f000-7fc0df52f000 ---p 00074000 08:02 5508521                    /usr/lib/libgcrypt.so.11.5.3
+7fc0df52f000-7fc0df533000 rwxp 00074000 08:02 5508521                    /usr/lib/libgcrypt.so.11.5.3
+7fc0df533000-7fc0df54a000 r-xp 00000000 08:02 5507859                    /usr/lib/libz.so.1.2.3.4
+7fc0df54a000-7fc0df749000 ---p 00017000 08:02 5507859                    /usr/lib/libz.so.1.2.3.4
+7fc0df749000-7fc0df74a000 rwxp 00016000 08:02 5507859                    /usr/lib/libz.so.1.2.3.4
+7fc0df74a000-7fc0df75a000 r-xp 00000000 08:02 5512258                    /usr/lib/libtasn1.so.3.1.9
+7fc0df75a000-7fc0df959000 ---p 00010000 08:02 5512258                    /usr/lib/libtasn1.so.3.1.9
+7fc0df959000-7fc0df95a000 rwxp 0000f000 08:02 5512258                    /usr/lib/libtasn1.so.3.1.9
+7fc0df95a000-7fc0df95c000 r-xp 00000000 08:02 5770620                    /lib/libkeyutils.so.1.3
+7fc0df95c000-7fc0dfb5b000 ---p 00002000 08:02 5770620                    /lib/libkeyutils.so.1.3
+7fc0dfb5b000-7fc0dfb5c000 rwxp 00001000 08:02 5770620                    /lib/libkeyutils.so.1.3
+7fc0dfb5c000-7fc0dfb63000 r-xp 00000000 08:02 5512162                    /usr/lib/libkrb5support.so.0.1
+7fc0dfb63000-7fc0dfd63000 ---p 00007000 08:02 5512162                    /usr/lib/libkrb5support.so.0.1
+7fc0dfd63000-7fc0dfd64000 rwxp 00007000 08:02 5512162                    /usr/lib/libkrb5support.so.0.1
+7fc0dfd64000-7fc0dfd89000 r-xp 00000000 08:02 5525941                    /usr/lib/libk5crypto.so.3.1
+7fc0dfd89000-7fc0dff88000 ---p 00025000 08:02 5525941                    /usr/lib/libk5crypto.so.3.1
+7fc0dff88000-7fc0dff8a000 rwxp 00024000 08:02 5525941                    /usr/lib/libk5crypto.so.3.1
+7fc0dff8a000-7fc0e0026000 r-xp 00000000 08:02 5512260                    /usr/lib/libgnutls.so.26.14.12
+7fc0e0026000-7fc0e0225000 ---p 0009c000 08:02 5512260                    /usr/lib/libgnutls.so.26.14.12
+7fc0e0225000-7fc0e022c000 rwxp 0009b000 08:02 5512260                    /usr/lib/libgnutls.so.26.14.12
+7fc0e022c000-7fc0e023f000 r-xp 00000000 08:02 5767172                    /lib/libresolv-2.11.3.so
+7fc0e023f000-7fc0e043e000 ---p 00013000 08:02 5767172                    /lib/libresolv-2.11.3.so
+7fc0e043e000-7fc0e043f000 r-xp 00012000 08:02 5767172                    /lib/libresolv-2.11.3.so
+7fc0e043f000-7fc0e0440000 rwxp 00013000 08:02 5767172                    /lib/libresolv-2.11.3.so
+7fc0e0440000-7fc0e0442000 rwxp 00000000 00:00 0 
+7fc0e0442000-7fc0e0475000 r-xp 00000000 08:02 5512161                    /usr/lib/libgssapi_krb5.so.2.2
+7fc0e0475000-7fc0e0675000 ---p 00033000 08:02 5512161                    /usr/lib/libgssapi_krb5.so.2.2
+7fc0e0675000-7fc0e0677000 rwxp 00033000 08:02 5512161                    /usr/lib/libgssapi_krb5.so.2.2
+7fc0e0677000-7fc0e067a000 r-xp 00000000 08:02 5767236                    /lib/libcom_err.so.2.1
+7fc0e067a000-7fc0e0879000 ---p 00003000 08:02 5767236                    /lib/libcom_err.so.2.1
+7fc0e0879000-7fc0e087a000 rwxp 00002000 08:02 5767236                    /lib/libcom_err.so.2.1
+7fc0e087a000-7fc0e0938000 r-xp 00000000 08:02 5529240                    /usr/lib/libkrb5.so.3.3
+7fc0e0938000-7fc0e0b37000 ---p 000be000 08:02 5529240                    /usr/lib/libkrb5.so.3.3
+7fc0e0b37000-7fc0e0b42000 rwxp 000bd000 08:02 5529240                    /usr/lib/libkrb5.so.3.3
+7fc0e0b42000-7fc0e0b5b000 r-xp 00000000 08:02 5512427                    /usr/lib/libsasl2.so.2.0.23
+7fc0e0b5b000-7fc0e0d5a000 ---p 00019000 08:02 5512427                    /usr/lib/libsasl2.so.2.0.23
+7fc0e0d5a000-7fc0e0d5b000 rwxp 00018000 08:02 5512427                    /usr/lib/libsasl2.so.2.0.23
+7fc0e0d5b000-7fc0e0d68000 r-xp 00000000 08:02 5512436                    /usr/lib/liblber-2.4.so.2.5.6
+7fc0e0d68000-7fc0e0f68000 ---p 0000d000 08:02 5512436                    /usr/lib/liblber-2.4.so.2.5.6
+7fc0e0f68000-7fc0e0f69000 rwxp 0000d000 08:02 5512436                    /usr/lib/liblber-2.4.so.2.5.6
+7fc0e0f69000-7fc0e0fb0000 r-xp 00000000 08:02 5512435                    /usr/lib/libldap_r-2.4.so.2.5.6
+7fc0e0fb0000-7fc0e11af000 ---p 00047000 08:02 5512435                    /usr/lib/libldap_r-2.4.so.2.5.6
+7fc0e11af000-7fc0e11b2000 rwxp 00046000 08:02 5512435                    /usr/lib/libldap_r-2.4.so.2.5.6
+7fc0e11b2000-7fc0e11b4000 rwxp 00000000 00:00 0 
+7fc0e11b4000-7fc0e11c7000 r-xp 00000000 08:02 5769704                    /lib/libnss_ldap-2.11.2.so
+7fc0e11c7000-7fc0e13c6000 ---p 00013000 08:02 5769704                    /lib/libnss_ldap-2.11.2.so
+7fc0e13c6000-7fc0e13c8000 rwxp 00012000 08:02 5769704                    /lib/libnss_ldap-2.11.2.so
+7fc0e13c8000-7fc0e13d3000 rwxp 00000000 00:00 0 
+7fc0e13d3000-7fc0e13df000 r-xp 00000000 08:02 5767170                    /lib/libnss_files-2.11.3.so
+7fc0e13df000-7fc0e15de000 ---p 0000c000 08:02 5767170                    /lib/libnss_files-2.11.3.so
+7fc0e15de000-7fc0e15df000 r-xp 0000b000 08:02 5767170                    /lib/libnss_files-2.11.3.so
+7fc0e15df000-7fc0e15e0000 rwxp 0000c000 08:02 5767170                    /lib/libnss_files-2.11.3.so
+7fc0e15e0000-7fc0e15ea000 r-xp 00000000 08:02 5767193                    /lib/libnss_nis-2.11.3.so
+7fc0e15ea000-7fc0e17e9000 ---p 0000a000 08:02 5767193                    /lib/libnss_nis-2.11.3.so
+7fc0e17e9000-7fc0e17ea000 r-xp 00009000 08:02 5767193                    /lib/libnss_nis-2.11.3.so
+7fc0e17ea000-7fc0e17eb000 rwxp 0000a000 08:02 5767193                    /lib/libnss_nis-2.11.3.so
+7fc0e17eb000-7fc0e17f2000 r-xp 00000000 08:02 5767178                    /lib/libnss_compat-2.11.3.so
+7fc0e17f2000-7fc0e19f1000 ---p 00007000 08:02 5767178                    /lib/libnss_compat-2.11.3.so
+7fc0e19f1000-7fc0e19f2000 r-xp 00006000 08:02 5767178                    /lib/libnss_compat-2.11.3.so
+7fc0e19f2000-7fc0e19f3000 rwxp 00007000 08:02 5767178                    /lib/libnss_compat-2.11.3.so
+7fc0e19f3000-7fc0e1a08000 r-xp 00000000 08:02 5767183                    /lib/libnsl-2.11.3.so
+7fc0e1a08000-7fc0e1c07000 ---p 00015000 08:02 5767183                    /lib/libnsl-2.11.3.so
+7fc0e1c07000-7fc0e1c08000 r-xp 00014000 08:02 5767183                    /lib/libnsl-2.11.3.so
+7fc0e1c08000-7fc0e1c09000 rwxp 00015000 08:02 5767183                    /lib/libnsl-2.11.3.so
+7fc0e1c09000-7fc0e1c0b000 rwxp 00000000 00:00 0 
+7fc0e1c0b000-7fc0e1c34000 r-xp 00000000 08:02 6034320                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libjava.so
+7fc0e1c34000-7fc0e1d33000 ---p 00029000 08:02 6034320                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libjava.so
+7fc0e1d33000-7fc0e1d3a000 rwxp 00028000 08:02 6034320                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libjava.so
+7fc0e1d3a000-7fc0e1d47000 r-xp 00000000 08:02 6034330                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libverify.so
+7fc0e1d47000-7fc0e1e46000 ---p 0000d000 08:02 6034330                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libverify.so
+7fc0e1e46000-7fc0e1e49000 rwxp 0000c000 08:02 6034330                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libverify.so
+7fc0e1e49000-7fc0e1e50000 r-xp 00000000 08:02 5767176                    /lib/librt-2.11.3.so
+7fc0e1e50000-7fc0e204f000 ---p 00007000 08:02 5767176                    /lib/librt-2.11.3.so
+7fc0e204f000-7fc0e2050000 r-xp 00006000 08:02 5767176                    /lib/librt-2.11.3.so
+7fc0e2050000-7fc0e2051000 rwxp 00007000 08:02 5767176                    /lib/librt-2.11.3.so
+7fc0e2051000-7fc0e2054000 ---p 00000000 00:00 0 
+7fc0e2054000-7fc0e2152000 rwxp 00000000 00:00 0 
+7fc0e2152000-7fc0e21d2000 r-xp 00000000 08:02 5767192                    /lib/libm-2.11.3.so
+7fc0e21d2000-7fc0e23d2000 ---p 00080000 08:02 5767192                    /lib/libm-2.11.3.so
+7fc0e23d2000-7fc0e23d3000 r-xp 00080000 08:02 5767192                    /lib/libm-2.11.3.so
+7fc0e23d3000-7fc0e23d4000 rwxp 00081000 08:02 5767192                    /lib/libm-2.11.3.so
+7fc0e23d4000-7fc0e2cee000 r-xp 00000000 08:02 6174622                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/server/libjvm.so
+7fc0e2cee000-7fc0e2df0000 ---p 0091a000 08:02 6174622                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/server/libjvm.so
+7fc0e2df0000-7fc0e2fa5000 rwxp 0091c000 08:02 6174622                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/server/libjvm.so
+7fc0e2fa5000-7fc0e2fdf000 rwxp 00000000 00:00 0 
+7fc0e2fdf000-7fc0e3138000 r-xp 00000000 08:02 5767179                    /lib/libc-2.11.3.so
+7fc0e3138000-7fc0e3337000 ---p 00159000 08:02 5767179                    /lib/libc-2.11.3.so
+7fc0e3337000-7fc0e333b000 r-xp 00158000 08:02 5767179                    /lib/libc-2.11.3.so
+7fc0e333b000-7fc0e333c000 rwxp 0015c000 08:02 5767179                    /lib/libc-2.11.3.so
+7fc0e333c000-7fc0e3341000 rwxp 00000000 00:00 0 
+7fc0e3341000-7fc0e3343000 r-xp 00000000 08:02 5767191                    /lib/libdl-2.11.3.so
+7fc0e3343000-7fc0e3543000 ---p 00002000 08:02 5767191                    /lib/libdl-2.11.3.so
+7fc0e3543000-7fc0e3544000 r-xp 00002000 08:02 5767191                    /lib/libdl-2.11.3.so
+7fc0e3544000-7fc0e3545000 rwxp 00003000 08:02 5767191                    /lib/libdl-2.11.3.so
+7fc0e3545000-7fc0e355c000 r-xp 00000000 08:02 5767174                    /lib/libpthread-2.11.3.so
+7fc0e355c000-7fc0e375b000 ---p 00017000 08:02 5767174                    /lib/libpthread-2.11.3.so
+7fc0e375b000-7fc0e375c000 r-xp 00016000 08:02 5767174                    /lib/libpthread-2.11.3.so
+7fc0e375c000-7fc0e375d000 rwxp 00017000 08:02 5767174                    /lib/libpthread-2.11.3.so
+7fc0e375d000-7fc0e3761000 rwxp 00000000 00:00 0 
+7fc0e3761000-7fc0e377f000 r-xp 00000000 08:02 5767175                    /lib/ld-2.11.3.so
+7fc0e3781000-7fc0e3784000 r-xs 00027000 08:02 6034316                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/ext/sunjce_provider.jar
+7fc0e3784000-7fc0e3787000 r-xs 00000000 08:02 7481237                    /var/cache/fontconfig/ea47318ec9849e1a71e80a5d69d13859-le64.cache-3
+7fc0e3787000-7fc0e378a000 r-xs 00000000 08:02 7477526                    /var/cache/fontconfig/b5ea634b0fb353b8ea17632d1f9ef766-le64.cache-3
+7fc0e378a000-7fc0e378e000 r-xs 00000000 08:02 7477922                    /var/cache/fontconfig/6eb3985aa4124903f6ff08ba781cd364-le64.cache-3
+7fc0e378e000-7fc0e3797000 r-xs 00000000 08:02 7477921                    /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-le64.cache-3
+7fc0e3797000-7fc0e379e000 r-xs 00000000 08:02 5506250                    /usr/lib/gconv/gconv-modules.cache
+7fc0e379e000-7fc0e37a8000 rwxp 00000000 00:00 0 
+7fc0e37a8000-7fc0e385e000 rwxp 00000000 00:00 0 
+7fc0e385e000-7fc0e3861000 rwxp 00000000 00:00 0 
+7fc0e3861000-7fc0e3868000 r-xp 00000000 08:02 6558069                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/jli/libjli.so
+7fc0e3868000-7fc0e3969000 ---p 00007000 08:02 6558069                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/jli/libjli.so
+7fc0e3969000-7fc0e396b000 rwxp 00008000 08:02 6558069                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/jli/libjli.so
+7fc0e396b000-7fc0e396c000 rwxp 00000000 00:00 0 
+7fc0e396e000-7fc0e3971000 r-xs 00013000 08:02 5903459                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/jce.jar
+7fc0e3971000-7fc0e3972000 r-xs 00000000 08:02 7477919                    /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-le64.cache-3
+7fc0e3972000-7fc0e397a000 rwxs 00000000 08:02 4456593                    /tmp/hsperfdata_kreverch/14486
+7fc0e397a000-7fc0e397b000 rwxp 00000000 00:00 0 
+7fc0e397b000-7fc0e397c000 r-xp 00000000 00:00 0 
+7fc0e397c000-7fc0e397e000 rwxp 00000000 00:00 0 
+7fc0e397e000-7fc0e397f000 r-xp 0001d000 08:02 5767175                    /lib/ld-2.11.3.so
+7fc0e397f000-7fc0e3980000 rwxp 0001e000 08:02 5767175                    /lib/ld-2.11.3.so
+7fc0e3980000-7fc0e3981000 rwxp 00000000 00:00 0 
+7fff21622000-7fff21637000 rwxp 00000000 00:00 0                          [stack]
+7fff21786000-7fff21787000 r-xp 00000000 00:00 0                          [vdso]
+ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
+
+VM Arguments:
+jvm_args: -Dfile.encoding=ANSI_X3.4-1968 
+java_command: gZFS.gui
+Launcher Type: SUN_STANDARD
+
+Environment Variables:
+PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
+LD_LIBRARY_PATH=/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/server:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/../lib/amd64:/usr/lib/nx/X11/Xinerama:/usr/lib/nx/X11
+SHELL=/bin/bash
+DISPLAY=:50.0
+
+Signal Handlers:
+SIGSEGV: [libjvm.so+0x85f800], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGBUS: [libjvm.so+0x85f800], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGFPE: [libjvm.so+0x70e300], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGPIPE: SIG_IGN, sa_mask[0]=0x00001000, sa_flags=0x10000000
+SIGXFSZ: [libjvm.so+0x70e300], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGILL: [libjvm.so+0x70e300], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
+SIGUSR2: [libjvm.so+0x711110], sa_mask[0]=0x00000004, sa_flags=0x10000004
+SIGHUP: [libjvm.so+0x710d10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGINT: [libjvm.so+0x710d10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGTERM: [libjvm.so+0x710d10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGQUIT: [libjvm.so+0x710d10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+
+
+---------------  S Y S T E M  ---------------
+
+OS:6.0.7
+
+uname:Linux 2.6.32-5-amd64 #1 SMP Fri May 10 08:43:19 UTC 2013 x86_64
+libc:glibc 2.11.3 NPTL 2.11.3 
+rlimit: STACK 8192k, CORE 0k, NPROC 160905, NOFILE 1024, AS infinity
+load average:0.65 0.26 0.09
+
+/proc/meminfo:
+MemTotal:       20605752 kB
+MemFree:         9163708 kB
+Buffers:          221748 kB
+Cached:          6628736 kB
+SwapCached:            0 kB
+Active:          9183868 kB
+Inactive:        1894928 kB
+Active(anon):    4228476 kB
+Inactive(anon):    17608 kB
+Active(file):    4955392 kB
+Inactive(file):  1877320 kB
+Unevictable:           0 kB
+Mlocked:               0 kB
+SwapTotal:       7811064 kB
+SwapFree:        7811064 kB
+Dirty:               312 kB
+Writeback:             0 kB
+AnonPages:       4228460 kB
+Mapped:           151372 kB
+Shmem:             17776 kB
+Slab:             236264 kB
+SReclaimable:     216536 kB
+SUnreclaim:        19728 kB
+KernelStack:        6928 kB
+PageTables:        36612 kB
+NFS_Unstable:          0 kB
+Bounce:                0 kB
+WritebackTmp:          0 kB
+CommitLimit:    18113940 kB
+Committed_AS:    8537056 kB
+VmallocTotal:   34359738367 kB
+VmallocUsed:      336372 kB
+VmallocChunk:   34359397708 kB
+HardwareCorrupted:     0 kB
+HugePages_Total:       0
+HugePages_Free:        0
+HugePages_Rsvd:        0
+HugePages_Surp:        0
+Hugepagesize:       2048 kB
+DirectMap4k:        7488 kB
+DirectMap2M:    20959232 kB
+
+
+CPU:total 4 (4 cores per cpu, 1 threads per core) family 6 model 23 stepping 10, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1
+
+/proc/cpuinfo:
+processor	: 0
+vendor_id	: GenuineIntel
+cpu family	: 6
+model		: 23
+model name	: Intel(R) Xeon(R) CPU           L5410  @ 2.33GHz
+stepping	: 10
+cpu MHz		: 2000.000
+cache size	: 6144 KB
+physical id	: 0
+siblings	: 4
+core id		: 0
+cpu cores	: 4
+apicid		: 0
+initial apicid	: 0
+fpu		: yes
+fpu_exception	: yes
+cpuid level	: 13
+wp		: yes
+flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority
+bogomips	: 4655.62
+clflush size	: 64
+cache_alignment	: 64
+address sizes	: 38 bits physical, 48 bits virtual
+power management:
+
+processor	: 1
+vendor_id	: GenuineIntel
+cpu family	: 6
+model		: 23
+model name	: Intel(R) Xeon(R) CPU           L5410  @ 2.33GHz
+stepping	: 10
+cpu MHz		: 2000.000
+cache size	: 6144 KB
+physical id	: 0
+siblings	: 4
+core id		: 2
+cpu cores	: 4
+apicid		: 2
+initial apicid	: 2
+fpu		: yes
+fpu_exception	: yes
+cpuid level	: 13
+wp		: yes
+flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority
+bogomips	: 4655.04
+clflush size	: 64
+cache_alignment	: 64
+address sizes	: 38 bits physical, 48 bits virtual
+power management:
+
+processor	: 2
+vendor_id	: GenuineIntel
+cpu family	: 6
+model		: 23
+model name	: Intel(R) Xeon(R) CPU           L5410  @ 2.33GHz
+stepping	: 10
+cpu MHz		: 2333.000
+cache size	: 6144 KB
+physical id	: 0
+siblings	: 4
+core id		: 1
+cpu cores	: 4
+apicid		: 1
+initial apicid	: 1
+fpu		: yes
+fpu_exception	: yes
+cpuid level	: 13
+wp		: yes
+flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority
+bogomips	: 4655.06
+clflush size	: 64
+cache_alignment	: 64
+address sizes	: 38 bits physical, 48 bits virtual
+power management:
+
+processor	: 3
+vendor_id	: GenuineIntel
+cpu family	: 6
+model		: 23
+model name	: Intel(R) Xeon(R) CPU           L5410  @ 2.33GHz
+stepping	: 10
+cpu MHz		: 2000.000
+cache size	: 6144 KB
+physical id	: 0
+siblings	: 4
+core id		: 3
+cpu cores	: 4
+apicid		: 3
+initial apicid	: 3
+fpu		: yes
+fpu_exception	: yes
+cpuid level	: 13
+wp		: yes
+flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority
+bogomips	: 4655.00
+clflush size	: 64
+cache_alignment	: 64
+address sizes	: 38 bits physical, 48 bits virtual
+power management:
+
+
+
+Memory: 4k page, physical 20605752k(9163708k free), swap 7811064k(7811064k free)
+
+vm_info: Java HotSpot(TM) 64-Bit Server VM (20.1-b02) for linux-amd64 JRE (1.6.0_26-b03), built on May  4 2011 01:13:47 by "java_re" with gcc 3.2.2 (SuSE Linux)
+
+time: Sat Aug  3 14:38:23 2013
+elapsed time: 17 seconds
+

Property changes on: hs_err_pid14486.log
___________________________________________________________________
Added: svn:keywords
   + Id

Index: jfreechart-1.0.15.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: jfreechart-1.0.15.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: iText-2.1.5.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: iText-2.1.5.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: log4j-1.2.16.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: log4j-1.2.16.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: org.eclipse.swt.win32.win32.x86_64_3.7.1.v3738a.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: org.eclipse.swt.win32.win32.x86_64_3.7.1.v3738a.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: jsch-0.1.50.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: jsch-0.1.50.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: jfreechart-1.0.15-swt.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: jfreechart-1.0.15-swt.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: org.eclipse.swt.gtk.linux.x86_3.7.0.v3735b.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: org.eclipse.swt.gtk.linux.x86_3.7.0.v3735b.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: hs_err_pid9913.log
===================================================================
--- hs_err_pid9913.log	(revision 0)
+++ hs_err_pid9913.log	(revision 14)
@@ -0,0 +1,766 @@
+#
+# A fatal error has been detected by the Java Runtime Environment:
+#
+#  SIGSEGV (0xb) at pc=0x00007fcd9556faaa, pid=9913, tid=140521106032384
+#
+# JRE version: 6.0_26-b03
+# Java VM: Java HotSpot(TM) 64-Bit Server VM (20.1-b02 mixed mode linux-amd64 compressed oops)
+# Problematic frame:
+# C  [libgtk-x11-2.0.so.0+0x15faaa]  __float128+0x2eba
+#
+# If you would like to submit a bug report, please visit:
+#   http://java.sun.com/webapps/bugreport/crash.jsp
+# The crash happened outside the Java Virtual Machine in native code.
+# See problematic frame for where to report the bug.
+#
+
+---------------  T H R E A D  ---------------
+
+Current thread (0x0000000041777800):  JavaThread "main" [_thread_in_native, id=9918, stack(0x00007fcd9e8bc000,0x00007fcd9e9bd000)]
+
+siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x0000000000000020
+
+Registers:
+RAX=0x00007fcd903f9360, RBX=0x00007fcd9007e980, RCX=0x0000000000000000, RDX=0x0000000000000000
+RSP=0x00007fcd9e9baa90, RBP=0x00007fcd903f92b0, RSI=0x0000000000000000, RDI=0x00007fcd90550300
+R8 =0x00007fcd8ed77d68, R9 =0x00000000000026be, R10=0x0000000000000003, R11=0x0000000000000ffc
+R12=0x00007fcd9556fa60, R13=0x00007fcd903f92b0, R14=0x00007fcd9051aed0, R15=0x00007fcd9e9bac50
+RIP=0x00007fcd9556faaa, EFLAGS=0x0000000000010246, CSGSFS=0x0000000000000033, ERR=0x0000000000000004
+  TRAPNO=0x000000000000000e
+
+Top of Stack: (sp=0x00007fcd9e9baa90)
+0x00007fcd9e9baa90:   00007fcd9556fa60 00007fcd9e9bac50
+0x00007fcd9e9baaa0:   00007fcd902a09e0 00007fcd95551c78
+0x00007fcd9e9baab0:   00007fcd902a09e0 0000000000000000
+0x00007fcd9e9baac0:   00007fcd9051aed0 0000000000000002
+0x00007fcd9e9baad0:   00007fcd9e9bac10 00007fcd8eb3e47e
+0x00007fcd9e9baae0:   00007fcd900c2440 00007fcd90497380
+0x00007fcd9e9baaf0:   00000000000000b4 00007fcd9e9baaf8
+0x00007fcd9e9bab00:   0000000000000000 00007fcd8eb3df6c
+0x00007fcd9e9bab10:   0000000640008002 00007fcd8eb583c8
+0x00007fcd9e9bab20:   00000006c0c9f830 00007fcd8eb583c8
+0x00007fcd9e9bab30:   00007fcd9e9bac50 00007fcd902a0c60
+0x00007fcd9e9bab40:   00007fcd9026c090 00007fcd9fdba5a0
+0x00007fcd9e9bab50:   00007fcd8e92d2e8 00007fcd902a0ce0
+0x00007fcd9e9bab60:   0000000000000000 00007fcd8eb54040
+0x00007fcd9e9bab70:   00007fcd9e9babc8 00000020c0d3ed58
+0x00007fcd9e9bab80:   00007fcd9048bc08 00007fcd9e9bac30
+0x00007fcd9e9bab90:   00007fcd9e9bac10 00007fcd9051aed0
+0x00007fcd9e9baba0:   000000009e9bac10 00007fcd902a0ce0
+0x00007fcd9e9babb0:   00007fcd9e9bac50 00007fcd903f92b0
+0x00007fcd9e9babc0:   01007fcd9e9bb550 000000000000146b
+0x00007fcd9e9babd0:   00007fcd902a0c60 00007fcd902a09e0
+0x00007fcd9e9babe0:   0000002200000001 00007fcd9e9bac50
+0x00007fcd9e9babf0:   00007fcd9e9bada0 00007fcd9e9bac00
+0x00007fcd9e9bac00:   0000000000000000 00007fcd903f92b0
+0x00007fcd9e9bac10:   0000000000000022 0000000100000002
+0x00007fcd9e9bac20:   00007fcd9021c900 00007fcd9021c900
+0x00007fcd9e9bac30:   00007fcd00000022 00007fcd9051aed8
+0x00007fcd9e9bac40:   00007fcd8e92d320 00007fcd8eb405b5
+0x00007fcd9e9bac50:   0000000000000014 0000000000000000
+0x00007fcd9e9bac60:   0000000000000000 00007fcd8eb583c8
+0x00007fcd9e9bac70:   00007fcd9028a4f0 00007fcd8eb616da
+0x00007fcd9e9bac80:   00007fcd9e9bada0 00007fcd903f92b0 
+
+Instructions: (pc=0x00007fcd9556faaa)
+0x00007fcd9556fa8a:   66 0f 1f 44 00 00 e8 4b 95 ff ff 48 89 ef 48 89
+0x00007fcd9556fa9a:   c6 e8 f0 05 f1 ff f6 40 78 02 48 8b 55 70 75 16
+0x00007fcd9556faaa:   f6 42 20 20 74 10 8b 53 34 3b 50 10 75 0b 48 89
+0x00007fcd9556faba:   ef e8 d0 fd ff ff 8b 53 34 0f b6 85 a9 00 00 00 
+
+Register to memory mapping:
+
+RAX=0x00007fcd903f9360 is an unknown value
+RBX=0x00007fcd9007e980 is an unknown value
+RCX=0x0000000000000000 is an unknown value
+RDX=0x0000000000000000 is an unknown value
+RSP=0x00007fcd9e9baa90 is pointing into the stack for thread: 0x0000000041777800
+RBP=0x00007fcd903f92b0 is an unknown value
+RSI=0x0000000000000000 is an unknown value
+RDI=0x00007fcd90550300 is an unknown value
+R8 =0x00007fcd8ed77d68: <offset 0x246d68> in /usr/lib/libgobject-2.0.so.0 at 0x00007fcd8eb31000
+R9 =0x00000000000026be is an unknown value
+R10=0x0000000000000003 is an unknown value
+R11=0x0000000000000ffc is an unknown value
+R12=0x00007fcd9556fa60: <offset 0x15fa60> in /usr/lib/libgtk-x11-2.0.so.0 at 0x00007fcd95410000
+R13=0x00007fcd903f92b0 is an unknown value
+R14=0x00007fcd9051aed0 is an unknown value
+R15=0x00007fcd9e9bac50 is pointing into the stack for thread: 0x0000000041777800
+
+
+Stack: [0x00007fcd9e8bc000,0x00007fcd9e9bd000],  sp=0x00007fcd9e9baa90,  free space=1018k
+Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
+C  [libgtk-x11-2.0.so.0+0x15faaa]  __float128+0x2eba
+
+Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
+j  org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(J)V+0
+j  org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(J)V+8
+j  org.eclipse.swt.widgets.Display.eventProc(JJ)J+149
+v  ~StubRoutines::call_stub
+j  org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(JZ)Z+0
+j  org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(JZ)Z+9
+j  org.eclipse.swt.widgets.Display.readAndDispatch()Z+36
+j  gZFS.gui.open()V+40
+j  gZFS.gui.main([Ljava/lang/String;)V+9
+v  ~StubRoutines::call_stub
+
+---------------  P R O C E S S  ---------------
+
+Java Threads: ( => current thread )
+  0x00007fcd906f4000 JavaThread "Connect thread psittacus.ens-lyon.fr session" [_thread_in_native, id=9964, stack(0x00007fcd89f29000,0x00007fcd8a02a000)]
+  0x0000000041c3b000 JavaThread "AWT-XAWT" daemon [_thread_in_native, id=9949, stack(0x00007fcd8a68d000,0x00007fcd8a78e000)]
+  0x0000000041b7c000 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=9948, stack(0x00007fcd8a78e000,0x00007fcd8a88f000)]
+  0x00007fcd90341000 JavaThread "Connect thread psittacus.ens-lyon.fr session" [_thread_in_native, id=9945, stack(0x00007fcd8af56000,0x00007fcd8b057000)]
+  0x0000000041809800 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=9929, stack(0x00007fcd9614e000,0x00007fcd9624f000)]
+  0x0000000041805800 JavaThread "C2 CompilerThread1" daemon [_thread_in_native, id=9928, stack(0x00007fcd9624f000,0x00007fcd96350000)]
+  0x0000000041802800 JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=9927, stack(0x00007fcd96350000,0x00007fcd96451000)]
+  0x0000000041800000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=9926, stack(0x00007fcd96451000,0x00007fcd96552000)]
+  0x00000000417e4800 JavaThread "Finalizer" daemon [_thread_blocked, id=9925, stack(0x00007fcd96552000,0x00007fcd96653000)]
+  0x00000000417dd000 JavaThread "Reference Handler" daemon [_thread_blocked, id=9924, stack(0x00007fcd96653000,0x00007fcd96754000)]
+=>0x0000000041777800 JavaThread "main" [_thread_in_native, id=9918, stack(0x00007fcd9e8bc000,0x00007fcd9e9bd000)]
+
+Other Threads:
+  0x00000000417d6000 VMThread [stack: 0x00007fcd96754000,0x00007fcd96855000] [id=9923]
+  0x00007fcd90012000 WatcherThread [stack: 0x00007fcd9604d000,0x00007fcd9614e000] [id=9930]
+
+VM state:not at safepoint (normal execution)
+
+VM Mutex/Monitor currently owned by a thread: None
+
+Heap
+ PSYoungGen      total 93952K, used 48474K [0x00000007972b0000, 0x000000079db80000, 0x0000000800000000)
+  eden space 80576K, 60% used [0x00000007972b0000,0x000000079a2068a0,0x000000079c160000)
+  from space 13376K, 0% used [0x000000079ce70000,0x000000079ce70000,0x000000079db80000)
+  to   space 13376K, 0% used [0x000000079c160000,0x000000079c160000,0x000000079ce70000)
+ PSOldGen        total 214656K, used 0K [0x00000006c5800000, 0x00000006d29a0000, 0x00000007972b0000)
+  object space 214656K, 0% used [0x00000006c5800000,0x00000006c5800000,0x00000006d29a0000)
+ PSPermGen       total 21248K, used 18395K [0x00000006c0600000, 0x00000006c1ac0000, 0x00000006c5800000)
+  object space 21248K, 86% used [0x00000006c0600000,0x00000006c17f6e10,0x00000006c1ac0000)
+
+Code Cache  [0x00007fcd98407000, 0x00007fcd98677000, 0x00007fcd9b407000)
+ total_blobs=725 nmethods=159 adapters=520 free_code_cache=49378752 largest_free_block=9344
+
+Dynamic libraries:
+40000000-40009000 r-xp 00000000 08:02 6034364                            /usr/lib/jvm/java-6-sun-1.6.0.26/jre/bin/java
+40108000-4010a000 rwxp 00008000 08:02 6034364                            /usr/lib/jvm/java-6-sun-1.6.0.26/jre/bin/java
+41756000-4222a000 rwxp 00000000 00:00 0                                  [heap]
+6c0600000-6c1ac0000 rwxp 00000000 00:00 0 
+6c1ac0000-6c5800000 rwxp 00000000 00:00 0 
+6c5800000-6d29a0000 rwxp 00000000 00:00 0 
+6d29a0000-7972b0000 rwxp 00000000 00:00 0 
+7972b0000-79db80000 rwxp 00000000 00:00 0 
+79db80000-800000000 rwxp 00000000 00:00 0 
+7fcd84000000-7fcd84021000 rwxp 00000000 00:00 0 
+7fcd84021000-7fcd88000000 ---p 00000000 00:00 0 
+7fcd89f29000-7fcd89f2c000 ---p 00000000 00:00 0 
+7fcd89f2c000-7fcd8a02a000 rwxp 00000000 00:00 0 
+7fcd8a02a000-7fcd8a032000 r-xs 00115000 08:02 5903511                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/resources.jar
+7fcd8a032000-7fcd8a036000 r-xs 000cb000 08:02 6034318                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/ext/localedata.jar
+7fcd8a036000-7fcd8a0c5000 r-xp 00000000 08:02 5900249                    /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Bold.ttf
+7fcd8a0c5000-7fcd8a0d6000 r-xs 00000000 08:02 5901036                    /usr/share/fonts/type1/gsfonts/n019024l.pfb
+7fcd8a0d6000-7fcd8a0f1000 r-xs 00000000 08:02 5901060                    /usr/share/fonts/type1/gsfonts/p052003l.pfb
+7fcd8a0f1000-7fcd8a10a000 r-xs 00000000 08:02 5901062                    /usr/share/fonts/type1/gsfonts/n021003l.pfb
+7fcd8a10a000-7fcd8a11d000 r-xs 00000000 08:02 5901090                    /usr/share/fonts/type1/gsfonts/n019064l.pfb
+7fcd8a11d000-7fcd8a129000 r-xs 00000000 08:02 5901053                    /usr/share/fonts/type1/gsfonts/d050000l.pfb
+7fcd8a129000-7fcd8a13d000 r-xs 00000000 08:02 5901086                    /usr/share/fonts/type1/gsfonts/n019003l.pfb
+7fcd8a13d000-7fcd8a14e000 r-xs 00000000 08:02 5901057                    /usr/share/fonts/type1/gsfonts/n019023l.pfb
+7fcd8a14e000-7fcd8a167000 r-xs 00000000 08:02 5901076                    /usr/share/fonts/type1/gsfonts/n022004l.pfb
+7fcd8a167000-7fcd8a177000 r-xs 00000000 08:02 5901123                    /usr/share/fonts/type1/gsfonts/a010033l.pfb
+7fcd8a177000-7fcd8a187000 r-xs 00000000 08:02 5901093                    /usr/share/fonts/type1/gsfonts/a010015l.pfb
+7fcd8a187000-7fcd8a199000 r-xs 00000000 08:02 5901072                    /usr/share/fonts/type1/gsfonts/n019004l.pfb
+7fcd8a199000-7fcd8a1b2000 r-xs 00000000 08:02 5901125                    /usr/share/fonts/type1/gsfonts/b018012l.pfb
+7fcd8a1b2000-7fcd8a1c8000 r-xs 00000000 08:02 5901039                    /usr/share/fonts/type1/gsfonts/n021024l.pfb
+7fcd8a1c8000-7fcd8a1da000 r-xs 00000000 08:02 5901107                    /usr/share/fonts/type1/gsfonts/n019044l.pfb
+7fcd8a1da000-7fcd8a1f3000 r-xs 00000000 08:02 5901046                    /usr/share/fonts/type1/gsfonts/n021004l.pfb
+7fcd8a1f3000-7fcd8a20a000 r-xs 00000000 08:02 5901081                    /usr/share/fonts/type1/gsfonts/n021023l.pfb
+7fcd8a20a000-7fcd8a21c000 r-xs 00000000 08:02 5901048                    /usr/share/fonts/type1/gsfonts/n019043l.pfb
+7fcd8a21c000-7fcd8a22d000 r-xs 00000000 08:02 5901056                    /usr/share/fonts/type1/gsfonts/a010035l.pfb
+7fcd8a22d000-7fcd8a23d000 r-xs 00000000 08:02 5901109                    /usr/share/fonts/type1/gsfonts/a010013l.pfb
+7fcd8a23d000-7fcd8a258000 r-xs 00000000 08:02 5901102                    /usr/share/fonts/type1/gsfonts/p052004l.pfb
+7fcd8a258000-7fcd8a26a000 r-xs 00000000 08:02 5901043                    /usr/share/fonts/type1/gsfonts/b018035l.pfb
+7fcd8a26a000-7fcd8a280000 r-xs 00000000 08:02 5901050                    /usr/share/fonts/type1/gsfonts/n022024l.pfb
+7fcd8a280000-7fcd8a29b000 r-xs 00000000 08:02 5901137                    /usr/share/fonts/type1/gsfonts/c059016l.pfb
+7fcd8a29b000-7fcd8a2b3000 r-xs 00000000 08:02 5901074                    /usr/share/fonts/type1/gsfonts/c059036l.pfb
+7fcd8a2b3000-7fcd8a2c8000 r-xs 00000000 08:02 5901041                    /usr/share/fonts/type1/gsfonts/b018032l.pfb
+7fcd8a2c8000-7fcd8a2de000 r-xs 00000000 08:02 5901108                    /usr/share/fonts/type1/gsfonts/n022023l.pfb
+7fcd8a2de000-7fcd8a2f5000 r-xs 00000000 08:02 5901084                    /usr/share/fonts/type1/gsfonts/z003034l.pfb
+7fcd8a2f5000-7fcd8a30d000 r-xs 00000000 08:02 5901096                    /usr/share/fonts/type1/gsfonts/c059033l.pfb
+7fcd8a30d000-7fcd8a320000 r-xs 00000000 08:02 5901118                    /usr/share/fonts/type1/gsfonts/b018015l.pfb
+7fcd8a320000-7fcd8a329000 r-xs 00000000 08:02 5901092                    /usr/share/fonts/type1/gsfonts/s050000l.pfb
+7fcd8a329000-7fcd8a344000 r-xs 00000000 08:02 5901082                    /usr/share/fonts/type1/gsfonts/p052023l.pfb
+7fcd8a344000-7fcd8a35c000 r-xs 00000000 08:02 5901078                    /usr/share/fonts/type1/gsfonts/n022003l.pfb
+7fcd8a35c000-7fcd8a378000 r-xs 00000000 08:02 5901047                    /usr/share/fonts/type1/gsfonts/p052024l.pfb
+7fcd8a378000-7fcd8a37f000 r-xp 00000000 08:02 6034356                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnio.so
+7fcd8a37f000-7fcd8a47e000 ---p 00007000 08:02 6034356                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnio.so
+7fcd8a47e000-7fcd8a480000 rwxp 00006000 08:02 6034356                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnio.so
+7fcd8a480000-7fcd8a48d000 r-xp 00000000 08:02 5903965                    /home/kreverch/.swt/lib/linux/x86_64/libswt-cairo-gtk-4332.so
+7fcd8a48d000-7fcd8a68c000 ---p 0000d000 08:02 5903965                    /home/kreverch/.swt/lib/linux/x86_64/libswt-cairo-gtk-4332.so
+7fcd8a68c000-7fcd8a68d000 rwxp 0000c000 08:02 5903965                    /home/kreverch/.swt/lib/linux/x86_64/libswt-cairo-gtk-4332.so
+7fcd8a68d000-7fcd8a690000 ---p 00000000 00:00 0 
+7fcd8a690000-7fcd8a78e000 rwxp 00000000 00:00 0 
+7fcd8a78e000-7fcd8a791000 ---p 00000000 00:00 0 
+7fcd8a791000-7fcd8a88f000 rwxp 00000000 00:00 0 
+7fcd8a88f000-7fcd8a908000 r-xp 00000000 08:02 6034357                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libfontmanager.so
+7fcd8a908000-7fcd8aa07000 ---p 00079000 08:02 6034357                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libfontmanager.so
+7fcd8aa07000-7fcd8aa1c000 rwxp 00078000 08:02 6034357                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libfontmanager.so
+7fcd8aa1c000-7fcd8aa2d000 rwxp 00000000 00:00 0 
+7fcd8aa2d000-7fcd8aa6f000 r-xp 00000000 08:02 6426975                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/xawt/libmawt.so
+7fcd8aa6f000-7fcd8ab6e000 ---p 00042000 08:02 6426975                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/xawt/libmawt.so
+7fcd8ab6e000-7fcd8ab7a000 rwxp 00041000 08:02 6426975                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/xawt/libmawt.so
+7fcd8ab7a000-7fcd8ab7b000 rwxp 00000000 00:00 0 
+7fcd8ab7b000-7fcd8ac0d000 r-xp 00000000 08:02 6034342                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libawt.so
+7fcd8ac0d000-7fcd8ad0c000 ---p 00092000 08:02 6034342                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libawt.so
+7fcd8ad0c000-7fcd8ad26000 rwxp 00091000 08:02 6034342                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libawt.so
+7fcd8ad26000-7fcd8ad4a000 rwxp 00000000 00:00 0 
+7fcd8ad4a000-7fcd8ad55000 r-xp 00000000 08:02 5904040                    /home/kreverch/.swt/lib/linux/x86_64/libswt-atk-gtk-4332.so
+7fcd8ad55000-7fcd8af55000 ---p 0000b000 08:02 5904040                    /home/kreverch/.swt/lib/linux/x86_64/libswt-atk-gtk-4332.so
+7fcd8af55000-7fcd8af56000 rwxp 0000b000 08:02 5904040                    /home/kreverch/.swt/lib/linux/x86_64/libswt-atk-gtk-4332.so
+7fcd8af56000-7fcd8af59000 ---p 00000000 00:00 0 
+7fcd8af59000-7fcd8b057000 rwxp 00000000 00:00 0 
+7fcd8b057000-7fcd8b059000 r-xp 00000000 08:02 5900774                    /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
+7fcd8b059000-7fcd8b258000 ---p 00002000 08:02 5900774                    /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
+7fcd8b258000-7fcd8b259000 rwxp 00001000 08:02 5900774                    /usr/lib/pango/1.6.0/modules/pango-basic-fc.so
+7fcd8b259000-7fcd8b284000 r-xp 00000000 08:02 5901881                    /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
+7fcd8b284000-7fcd8b484000 ---p 0002b000 08:02 5901881                    /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
+7fcd8b484000-7fcd8b485000 rwxp 0002b000 08:02 5901881                    /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
+7fcd8b485000-7fcd8b48e000 r-xp 00000000 08:02 5506563                    /usr/lib/libltdl.so.7.2.1
+7fcd8b48e000-7fcd8b68d000 ---p 00009000 08:02 5506563                    /usr/lib/libltdl.so.7.2.1
+7fcd8b68d000-7fcd8b68e000 rwxp 00008000 08:02 5506563                    /usr/lib/libltdl.so.7.2.1
+7fcd8b68e000-7fcd8b69c000 r-xp 00000000 08:02 5506572                    /usr/lib/libtdb.so.1.2.1
+7fcd8b69c000-7fcd8b89b000 ---p 0000e000 08:02 5506572                    /usr/lib/libtdb.so.1.2.1
+7fcd8b89b000-7fcd8b89c000 rwxp 0000d000 08:02 5506572                    /usr/lib/libtdb.so.1.2.1
+7fcd8b89c000-7fcd8b8a2000 r-xp 00000000 08:02 5506568                    /usr/lib/libogg.so.0.7.0
+7fcd8b8a2000-7fcd8baa1000 ---p 00006000 08:02 5506568                    /usr/lib/libogg.so.0.7.0
+7fcd8baa1000-7fcd8baa2000 rwxp 00005000 08:02 5506568                    /usr/lib/libogg.so.0.7.0
+7fcd8baa2000-7fcd8bacd000 r-xp 00000000 08:02 5506727                    /usr/lib/libvorbis.so.0.4.4
+7fcd8bacd000-7fcd8bccd000 ---p 0002b000 08:02 5506727                    /usr/lib/libvorbis.so.0.4.4
+7fcd8bccd000-7fcd8bcce000 rwxp 0002b000 08:02 5506727                    /usr/lib/libvorbis.so.0.4.4
+7fcd8bcce000-7fcd8bcd5000 r-xp 00000000 08:02 5506733                    /usr/lib/libvorbisfile.so.3.3.2
+7fcd8bcd5000-7fcd8bed4000 ---p 00007000 08:02 5506733                    /usr/lib/libvorbisfile.so.3.3.2
+7fcd8bed4000-7fcd8bed5000 rwxp 00006000 08:02 5506733                    /usr/lib/libvorbisfile.so.3.3.2
+7fcd8bed5000-7fcd8bee4000 r-xp 00000000 08:02 5506739                    /usr/lib/libcanberra.so.0.2.3
+7fcd8bee4000-7fcd8c0e4000 ---p 0000f000 08:02 5506739                    /usr/lib/libcanberra.so.0.2.3
+7fcd8c0e4000-7fcd8c0e5000 rwxp 0000f000 08:02 5506739                    /usr/lib/libcanberra.so.0.2.3
+7fcd8c0e5000-7fcd8c0e9000 r-xp 00000000 08:02 5510036                    /usr/lib/libcanberra-gtk.so.0.1.6
+7fcd8c0e9000-7fcd8c2e8000 ---p 00004000 08:02 5510036                    /usr/lib/libcanberra-gtk.so.0.1.6
+7fcd8c2e8000-7fcd8c2e9000 rwxp 00003000 08:02 5510036                    /usr/lib/libcanberra-gtk.so.0.1.6
+7fcd8c2e9000-7fcd8c2ee000 r-xp 00000000 08:02 5645712                    /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
+7fcd8c2ee000-7fcd8c4ee000 ---p 00005000 08:02 5645712                    /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
+7fcd8c4ee000-7fcd8c4ef000 rwxp 00005000 08:02 5645712                    /usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so
+7fcd8c4ef000-7fcd8c4f4000 r-xp 00000000 08:02 5513397                    /usr/lib/libXdmcp.so.6.0.0
+7fcd8c4f4000-7fcd8c6f3000 ---p 00005000 08:02 5513397                    /usr/lib/libXdmcp.so.6.0.0
+7fcd8c6f3000-7fcd8c6f4000 rwxp 00004000 08:02 5513397                    /usr/lib/libXdmcp.so.6.0.0
+7fcd8c6f4000-7fcd8c6f6000 r-xp 00000000 08:02 5513395                    /usr/lib/libXau.so.6.0.0
+7fcd8c6f6000-7fcd8c8f6000 ---p 00002000 08:02 5513395                    /usr/lib/libXau.so.6.0.0
+7fcd8c8f6000-7fcd8c8f7000 rwxp 00002000 08:02 5513395                    /usr/lib/libXau.so.6.0.0
+7fcd8c8f7000-7fcd8c91d000 r-xp 00000000 08:02 5511573                    /usr/lib/libexpat.so.1.5.2
+7fcd8c91d000-7fcd8cb1d000 ---p 00026000 08:02 5511573                    /usr/lib/libexpat.so.1.5.2
+7fcd8cb1d000-7fcd8cb1f000 rwxp 00026000 08:02 5511573                    /usr/lib/libexpat.so.1.5.2
+7fcd8cb1f000-7fcd8cb3b000 r-xp 00000000 08:02 5767207                    /lib/libselinux.so.1
+7fcd8cb3b000-7fcd8cd3a000 ---p 0001c000 08:02 5767207                    /lib/libselinux.so.1
+7fcd8cd3a000-7fcd8cd3b000 r-xp 0001b000 08:02 5767207                    /lib/libselinux.so.1
+7fcd8cd3b000-7fcd8cd3c000 rwxp 0001c000 08:02 5767207                    /lib/libselinux.so.1
+7fcd8cd3c000-7fcd8cd3d000 rwxp 00000000 00:00 0 
+7fcd8cd3d000-7fcd8cd44000 r-xp 00000000 08:02 5524680                    /usr/lib/libxcb-render.so.0.0.0
+7fcd8cd44000-7fcd8cf44000 ---p 00007000 08:02 5524680                    /usr/lib/libxcb-render.so.0.0.0
+7fcd8cf44000-7fcd8cf45000 rwxp 00007000 08:02 5524680                    /usr/lib/libxcb-render.so.0.0.0
+7fcd8cf45000-7fcd8cf48000 r-xp 00000000 08:02 5505648                    /usr/lib/libxcb-render-util.so.0.0.0
+7fcd8cf48000-7fcd8d147000 ---p 00003000 08:02 5505648                    /usr/lib/libxcb-render-util.so.0.0.0
+7fcd8d147000-7fcd8d148000 rwxp 00002000 08:02 5505648                    /usr/lib/libxcb-render-util.so.0.0.0
+7fcd8d148000-7fcd8d16d000 r-xp 00000000 08:02 5767606                    /lib/libpng12.so.0.44.0
+7fcd8d16d000-7fcd8d36d000 ---p 00025000 08:02 5767606                    /lib/libpng12.so.0.44.0
+7fcd8d36d000-7fcd8d36e000 rwxp 00025000 08:02 5767606                    /lib/libpng12.so.0.44.0
+7fcd8d36e000-7fcd8d3c4000 r-xp 00000000 08:02 5505643                    /usr/lib/libpixman-1.so.0.16.4
+7fcd8d3c4000-7fcd8d5c3000 ---p 00056000 08:02 5505643                    /usr/lib/libpixman-1.so.0.16.4
+7fcd8d5c3000-7fcd8d5c6000 rwxp 00055000 08:02 5505643                    /usr/lib/libpixman-1.so.0.16.4
+7fcd8d5c6000-7fcd8d5e2000 r-xp 00000000 08:02 5515046                    /usr/lib/libxcb.so.1.1.0
+7fcd8d5e2000-7fcd8d7e1000 ---p 0001c000 08:02 5515046                    /usr/lib/libxcb.so.1.1.0
+7fcd8d7e1000-7fcd8d7e2000 rwxp 0001b000 08:02 5515046                    /usr/lib/libxcb.so.1.1.0
+7fcd8d7e2000-7fcd8d7eb000 r-xp 00000000 08:02 5505651                    /usr/lib/libXcursor.so.1.0.2
+7fcd8d7eb000-7fcd8d9eb000 ---p 00009000 08:02 5505651                    /usr/lib/libXcursor.so.1.0.2
+7fcd8d9eb000-7fcd8d9ec000 rwxp 00009000 08:02 5505651                    /usr/lib/libXcursor.so.1.0.2
+7fcd8d9ec000-7fcd8d9f4000 r-xp 00000000 08:02 5509983                    /usr/lib/libXrandr.so.2.2.0
+7fcd8d9f4000-7fcd8dbf3000 ---p 00008000 08:02 5509983                    /usr/lib/libXrandr.so.2.2.0
+7fcd8dbf3000-7fcd8dbf4000 rwxp 00007000 08:02 5509983                    /usr/lib/libXrandr.so.2.2.0
+7fcd8dbf4000-7fcd8dbf6000 r-xp 00000000 08:02 5646610                    /usr/lib/nx/X11/libNX_Xinerama.so.1.0
+7fcd8dbf6000-7fcd8ddf6000 ---p 00002000 08:02 5646610                    /usr/lib/nx/X11/libNX_Xinerama.so.1.0
+7fcd8ddf6000-7fcd8ddf7000 rwxp 00002000 08:02 5646610                    /usr/lib/nx/X11/libNX_Xinerama.so.1.0
+7fcd8ddf7000-7fcd8de00000 r-xp 00000000 08:02 5505647                    /usr/lib/libXrender.so.1.3.0
+7fcd8de00000-7fcd8e000000 ---p 00009000 08:02 5505647                    /usr/lib/libXrender.so.1.3.0
+7fcd8e000000-7fcd8e001000 rwxp 00009000 08:02 5505647                    /usr/lib/libXrender.so.1.3.0
+7fcd8e001000-7fcd8e010000 r-xp 00000000 08:02 5509977                    /usr/lib/libXi.so.6.1.0
+7fcd8e010000-7fcd8e20f000 ---p 0000f000 08:02 5509977                    /usr/lib/libXi.so.6.1.0
+7fcd8e20f000-7fcd8e210000 rwxp 0000e000 08:02 5509977                    /usr/lib/libXi.so.6.1.0
+7fcd8e210000-7fcd8e221000 r-xp 00000000 08:02 5513404                    /usr/lib/libXext.so.6.4.0
+7fcd8e221000-7fcd8e421000 ---p 00011000 08:02 5513404                    /usr/lib/libXext.so.6.4.0
+7fcd8e421000-7fcd8e422000 rwxp 00011000 08:02 5513404                    /usr/lib/libXext.so.6.4.0
+7fcd8e422000-7fcd8e452000 r-xp 00000000 08:02 5770622                    /lib/libpcre.so.3.12.1
+7fcd8e452000-7fcd8e651000 ---p 00030000 08:02 5770622                    /lib/libpcre.so.3.12.1
+7fcd8e651000-7fcd8e652000 rwxp 0002f000 08:02 5770622                    /lib/libpcre.so.3.12.1
+7fcd8e652000-7fcd8e72d000 r-xp 00000000 08:02 5767604                    /lib/libglib-2.0.so.0.2400.2
+7fcd8e72d000-7fcd8e92c000 ---p 000db000 08:02 5767604                    /lib/libglib-2.0.so.0.2400.2
+7fcd8e92c000-7fcd8e92e000 rwxp 000da000 08:02 5767604                    /lib/libglib-2.0.so.0.2400.2
+7fcd8e92e000-7fcd8e931000 r-xp 00000000 08:02 5505631                    /usr/lib/libgmodule-2.0.so.0.2400.2
+7fcd8e931000-7fcd8eb30000 ---p 00003000 08:02 5505631                    /usr/lib/libgmodule-2.0.so.0.2400.2
+7fcd8eb30000-7fcd8eb31000 rwxp 00002000 08:02 5505631                    /usr/lib/libgmodule-2.0.so.0.2400.2
+7fcd8eb31000-7fcd8eb76000 r-xp 00000000 08:02 5505630                    /usr/lib/libgobject-2.0.so.0.2400.2
+7fcd8eb76000-7fcd8ed76000 ---p 00045000 08:02 5505630                    /usr/lib/libgobject-2.0.so.0.2400.2
+7fcd8ed76000-7fcd8ed78000 rwxp 00045000 08:02 5505630                    /usr/lib/libgobject-2.0.so.0.2400.2
+7fcd8ed78000-7fcd8edab000 r-xp 00000000 08:02 5505641                    /usr/lib/libfontconfig.so.1.4.4
+7fcd8edab000-7fcd8efab000 ---p 00033000 08:02 5505641                    /usr/lib/libfontconfig.so.1.4.4
+7fcd8efab000-7fcd8efad000 rwxp 00033000 08:02 5505641                    /usr/lib/libfontconfig.so.1.4.4
+7fcd8efad000-7fcd8f030000 r-xp 00000000 08:02 5511567                    /usr/lib/libfreetype.so.6.6.0
+7fcd8f030000-7fcd8f22f000 ---p 00083000 08:02 5511567                    /usr/lib/libfreetype.so.6.6.0
+7fcd8f22f000-7fcd8f235000 rwxp 00082000 08:02 5511567                    /usr/lib/libfreetype.so.6.6.0
+7fcd8f235000-7fcd8f27e000 r-xp 00000000 08:02 5509962                    /usr/lib/libpango-1.0.so.0.2800.3
+7fcd8f27e000-7fcd8f47e000 ---p 00049000 08:02 5509962                    /usr/lib/libpango-1.0.so.0.2800.3
+7fcd8f47e000-7fcd8f481000 rwxp 00049000 08:02 5509962                    /usr/lib/libpango-1.0.so.0.2800.3
+7fcd8f481000-7fcd8f4aa000 r-xp 00000000 08:02 5509958                    /usr/lib/libpangoft2-1.0.so.0.2800.3
+7fcd8f4aa000-7fcd8f6aa000 ---p 00029000 08:02 5509958                    /usr/lib/libpangoft2-1.0.so.0.2800.3
+7fcd8f6aa000-7fcd8f6ab000 rwxp 00029000 08:02 5509958                    /usr/lib/libpangoft2-1.0.so.0.2800.3
+7fcd8f6ab000-7fcd8f759000 r-xp 00000000 08:02 5505628                    /usr/lib/libgio-2.0.so.0.2400.2
+7fcd8f759000-7fcd8f959000 ---p 000ae000 08:02 5505628                    /usr/lib/libgio-2.0.so.0.2400.2
+7fcd8f959000-7fcd8f95c000 rwxp 000ae000 08:02 5505628                    /usr/lib/libgio-2.0.so.0.2400.2
+7fcd8f95c000-7fcd8f95d000 rwxp 00000000 00:00 0 
+7fcd8f95d000-7fcd8f9d8000 r-xp 00000000 08:02 5505652                    /usr/lib/libcairo.so.2.10800.10
+7fcd8f9d8000-7fcd8fbd7000 ---p 0007b000 08:02 5505652                    /usr/lib/libcairo.so.2.10800.10
+7fcd8fbd7000-7fcd8fbda000 rwxp 0007a000 08:02 5505652                    /usr/lib/libcairo.so.2.10800.10
+7fcd8fbda000-7fcd8fbf9000 r-xp 00000000 08:02 5505638                    /usr/lib/libatk-1.0.so.0.3009.1
+7fcd8fbf9000-7fcd8fdf8000 ---p 0001f000 08:02 5505638                    /usr/lib/libatk-1.0.so.0.3009.1
+7fcd8fdf8000-7fcd8fdfb000 rwxp 0001e000 08:02 5505638                    /usr/lib/libatk-1.0.so.0.3009.1
+7fcd8fdfb000-7fcd8fe00000 r-xp 00000000 08:02 5513406                    /usr/lib/libXfixes.so.3.1.0
+7fcd8fe00000-7fcd8ffff000 ---p 00005000 08:02 5513406                    /usr/lib/libXfixes.so.3.1.0
+7fcd8ffff000-7fcd90000000 rwxp 00004000 08:02 5513406                    /usr/lib/libXfixes.so.3.1.0
+7fcd90000000-7fcd9079c000 rwxp 00000000 00:00 0 
+7fcd9079c000-7fcd94000000 ---p 00000000 00:00 0 
+7fcd94005000-7fcd94016000 r-xs 00000000 08:02 5901101                    /usr/share/fonts/type1/gsfonts/n019063l.pfb
+7fcd94016000-7fcd94030000 r-xs 00000000 08:02 5901110                    /usr/share/fonts/type1/gsfonts/c059013l.pfb
+7fcd94030000-7fcd94037000 r-xs 00094000 08:02 5903460                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/jsse.jar
+7fcd94037000-7fcd9404a000 r-xp 00000000 08:02 6034334                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnet.so
+7fcd9404a000-7fcd9414b000 ---p 00013000 08:02 6034334                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnet.so
+7fcd9414b000-7fcd9414e000 rwxp 00014000 08:02 6034334                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libnet.so
+7fcd9414e000-7fcd941e9000 r-xp 00000000 08:02 5900244                    /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
+7fcd941e9000-7fcd941f2000 r-xs 00000000 08:02 7477927                    /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-le64.cache-3
+7fcd941f2000-7fcd941f4000 r-xp 00000000 08:02 5509978                    /usr/lib/libXdamage.so.1.1.0
+7fcd941f4000-7fcd943f3000 ---p 00002000 08:02 5509978                    /usr/lib/libXdamage.so.1.1.0
+7fcd943f3000-7fcd943f4000 rwxp 00001000 08:02 5509978                    /usr/lib/libXdamage.so.1.1.0
+7fcd943f4000-7fcd943f6000 r-xp 00000000 08:02 5509974                    /usr/lib/libXcomposite.so.1.0.0
+7fcd943f6000-7fcd945f5000 ---p 00002000 08:02 5509974                    /usr/lib/libXcomposite.so.1.0.0
+7fcd945f5000-7fcd945f6000 rwxp 00001000 08:02 5509974                    /usr/lib/libXcomposite.so.1.0.0
+7fcd945f6000-7fcd9472b000 r-xp 00000000 08:02 5513401                    /usr/lib/libX11.so.6.3.0
+7fcd9472b000-7fcd9492b000 ---p 00135000 08:02 5513401                    /usr/lib/libX11.so.6.3.0
+7fcd9492b000-7fcd94931000 rwxp 00135000 08:02 5513401                    /usr/lib/libX11.so.6.3.0
+7fcd94931000-7fcd9493d000 r-xp 00000000 08:02 5509960                    /usr/lib/libpangocairo-1.0.so.0.2800.3
+7fcd9493d000-7fcd94b3c000 ---p 0000c000 08:02 5509960                    /usr/lib/libpangocairo-1.0.so.0.2800.3
+7fcd94b3c000-7fcd94b3d000 rwxp 0000b000 08:02 5509960                    /usr/lib/libpangocairo-1.0.so.0.2800.3
+7fcd94b3d000-7fcd94be5000 r-xp 00000000 08:02 5510029                    /usr/lib/libgdk-x11-2.0.so.0.2000.1
+7fcd94be5000-7fcd94de5000 ---p 000a8000 08:02 5510029                    /usr/lib/libgdk-x11-2.0.so.0.2000.1
+7fcd94de5000-7fcd94dea000 rwxp 000a8000 08:02 5510029                    /usr/lib/libgdk-x11-2.0.so.0.2000.1
+7fcd94dea000-7fcd94e05000 r-xp 00000000 08:02 5510026                    /usr/lib/libgdk_pixbuf-2.0.so.0.2000.1
+7fcd94e05000-7fcd95005000 ---p 0001b000 08:02 5510026                    /usr/lib/libgdk_pixbuf-2.0.so.0.2000.1
+7fcd95005000-7fcd95006000 rwxp 0001b000 08:02 5510026                    /usr/lib/libgdk_pixbuf-2.0.so.0.2000.1
+7fcd95006000-7fcd9500b000 r-xp 00000000 08:02 5514923                    /usr/lib/libXtst.so.6.1.0
+7fcd9500b000-7fcd9520b000 ---p 00005000 08:02 5514923                    /usr/lib/libXtst.so.6.1.0
+7fcd9520b000-7fcd9520c000 rwxp 00005000 08:02 5514923                    /usr/lib/libXtst.so.6.1.0
+7fcd9520c000-7fcd95210000 r-xp 00000000 08:02 5505629                    /usr/lib/libgthread-2.0.so.0.2400.2
+7fcd95210000-7fcd9540f000 ---p 00004000 08:02 5505629                    /usr/lib/libgthread-2.0.so.0.2400.2
+7fcd9540f000-7fcd95410000 rwxp 00003000 08:02 5505629                    /usr/lib/libgthread-2.0.so.0.2400.2
+7fcd95410000-7fcd95825000 r-xp 00000000 08:02 5510028                    /usr/lib/libgtk-x11-2.0.so.0.2000.1
+7fcd95825000-7fcd95a24000 ---p 00415000 08:02 5510028                    /usr/lib/libgtk-x11-2.0.so.0.2000.1
+7fcd95a24000-7fcd95a2f000 rwxp 00414000 08:02 5510028                    /usr/lib/libgtk-x11-2.0.so.0.2000.1
+7fcd95a2f000-7fcd95a31000 rwxp 00000000 00:00 0 
+7fcd95a31000-7fcd95aa3000 r-xp 00000000 08:02 5903989                    /home/kreverch/.swt/lib/linux/x86_64/libswt-pi-gtk-4332.so
+7fcd95aa3000-7fcd95ca3000 ---p 00072000 08:02 5903989                    /home/kreverch/.swt/lib/linux/x86_64/libswt-pi-gtk-4332.so
+7fcd95ca3000-7fcd95ca5000 rwxp 00072000 08:02 5903989                    /home/kreverch/.swt/lib/linux/x86_64/libswt-pi-gtk-4332.so
+7fcd95ca5000-7fcd95ca8000 rwxp 00000000 00:00 0 
+7fcd95ca8000-7fcd95d26000 r-xp 00000000 08:02 5903988                    /home/kreverch/.swt/lib/linux/x86_64/libswt-gtk-4332.so
+7fcd95d26000-7fcd95f25000 ---p 0007e000 08:02 5903988                    /home/kreverch/.swt/lib/linux/x86_64/libswt-gtk-4332.so
+7fcd95f25000-7fcd95f2d000 rwxp 0007d000 08:02 5903988                    /home/kreverch/.swt/lib/linux/x86_64/libswt-gtk-4332.so
+7fcd95f2d000-7fcd95f2f000 rwxp 00000000 00:00 0 
+7fcd95f2f000-7fcd95f38000 r-xs 0006d000 08:02 5904100                    /home/kreverch/workspace/gZFS/log4j-1.2.16.jar
+7fcd95f38000-7fcd95f49000 r-xs 00157000 08:02 6298210                    /home/kreverch/workspace/gZFS/jfreechart-1.0.15.jar
+7fcd95f49000-7fcd95f4b000 r-xs 00011000 08:02 6298209                    /home/kreverch/workspace/gZFS/jfreechart-1.0.15-swt.jar
+7fcd95f4b000-7fcd95f4d000 r-xs 00002000 08:02 6298208                    /home/kreverch/workspace/gZFS/jfreechart-1.0.15-experimental.jar
+7fcd95f4d000-7fcd95f53000 r-xs 00046000 08:02 6298207                    /home/kreverch/workspace/gZFS/jcommon-1.0.18.jar
+7fcd95f53000-7fcd95f57000 r-xs 00039000 08:02 6175101                    /home/kreverch/workspace/gZFS/jsch-0.1.50.jar
+7fcd95f57000-7fcd95f5c000 r-xs 00045000 08:02 6428034                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.ui.forms_3.6.0.v20130517-0139.jar
+7fcd95f5c000-7fcd95faa000 r-xs 008b6000 08:02 6427743                    /home/kreverch/Downloads/eclipse/plugins/com.ibm.icu_50.1.1.v201304230130.jar
+7fcd95faa000-7fcd95fed000 r-xs 00366000 08:02 6427190                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.ui.workbench_3.105.0.v20130529-1406.jar
+7fcd95fed000-7fcd96000000 r-xs 000e0000 08:02 6427809                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.jface.text_3.8.100.v20130515-1957.jar
+7fcd96000000-7fcd96014000 r-xs 000f9000 08:02 6427961                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.jface_3.9.0.v20130521-1714.jar
+7fcd96014000-7fcd96029000 r-xs 00258000 08:02 6428032                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.swt.gtk.linux.x86_64_3.102.0.v20130605-1544.jar
+7fcd96029000-7fcd9602e000 r-xs 00038000 08:02 6427828                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.text_3.5.300.v20130515-1451.jar
+7fcd9602e000-7fcd96030000 r-xs 00010000 08:02 6427672                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.core.runtime_3.9.0.v20130326-1255.jar
+7fcd96030000-7fcd96033000 r-xs 0002a000 08:02 6427793                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.equinox.registry_3.5.300.v20130327-1442.jar
+7fcd96033000-7fcd96036000 r-xs 00018000 08:02 6427911                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.equinox.common_3.6.200.v20130402-1505.jar
+7fcd96036000-7fcd96039000 r-xs 00018000 08:02 6427796                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.core.commands_3.6.100.v20130515-1857.jar
+7fcd96039000-7fcd9604d000 r-xs 00140000 08:02 6427751                    /home/kreverch/Downloads/eclipse/plugins/org.eclipse.osgi_3.9.0.v20130529-1710.jar
+7fcd9604d000-7fcd9604e000 ---p 00000000 00:00 0 
+7fcd9604e000-7fcd9614e000 rwxp 00000000 00:00 0 
+7fcd9614e000-7fcd96151000 ---p 00000000 00:00 0 
+7fcd96151000-7fcd9624f000 rwxp 00000000 00:00 0 
+7fcd9624f000-7fcd96252000 ---p 00000000 00:00 0 
+7fcd96252000-7fcd96350000 rwxp 00000000 00:00 0 
+7fcd96350000-7fcd96353000 ---p 00000000 00:00 0 
+7fcd96353000-7fcd96451000 rwxp 00000000 00:00 0 
+7fcd96451000-7fcd96454000 ---p 00000000 00:00 0 
+7fcd96454000-7fcd96552000 rwxp 00000000 00:00 0 
+7fcd96552000-7fcd96555000 ---p 00000000 00:00 0 
+7fcd96555000-7fcd96653000 rwxp 00000000 00:00 0 
+7fcd96653000-7fcd96656000 ---p 00000000 00:00 0 
+7fcd96656000-7fcd96754000 rwxp 00000000 00:00 0 
+7fcd96754000-7fcd96755000 ---p 00000000 00:00 0 
+7fcd96755000-7fcd96d8e000 rwxp 00000000 00:00 0 
+7fcd96d8e000-7fcd96f26000 r-xs 03029000 08:02 5903492                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/rt.jar
+7fcd96f26000-7fcd96f4e000 rwxp 00000000 00:00 0 
+7fcd96f4e000-7fcd96f4f000 ---p 00000000 00:00 0 
+7fcd96f4f000-7fcd9704f000 rwxp 00000000 00:00 0 
+7fcd9704f000-7fcd97050000 ---p 00000000 00:00 0 
+7fcd97050000-7fcd97150000 rwxp 00000000 00:00 0 
+7fcd97150000-7fcd97151000 ---p 00000000 00:00 0 
+7fcd97151000-7fcd97251000 rwxp 00000000 00:00 0 
+7fcd97251000-7fcd97252000 ---p 00000000 00:00 0 
+7fcd97252000-7fcd9735d000 rwxp 00000000 00:00 0 
+7fcd9735d000-7fcd9737b000 rwxp 00000000 00:00 0 
+7fcd9737b000-7fcd973e4000 rwxp 00000000 00:00 0 
+7fcd973e4000-7fcd97a09000 rwxp 00000000 00:00 0 
+7fcd97a09000-7fcd97a14000 rwxp 00000000 00:00 0 
+7fcd97a14000-7fcd97a32000 rwxp 00000000 00:00 0 
+7fcd97a32000-7fcd97a9b000 rwxp 00000000 00:00 0 
+7fcd97a9b000-7fcd980bf000 rwxp 00000000 00:00 0 
+7fcd980bf000-7fcd980f4000 rwxp 00000000 00:00 0 
+7fcd980f4000-7fcd98406000 rwxp 00000000 00:00 0 
+7fcd98406000-7fcd98677000 rwxp 00000000 00:00 0 
+7fcd98677000-7fcd9b407000 rwxp 00000000 00:00 0 
+7fcd9b407000-7fcd9b415000 r-xp 00000000 08:02 6034349                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libzip.so
+7fcd9b415000-7fcd9b517000 ---p 0000e000 08:02 6034349                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libzip.so
+7fcd9b517000-7fcd9b51a000 rwxp 00010000 08:02 6034349                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libzip.so
+7fcd9b51a000-7fcd9b51b000 rwxp 00000000 00:00 0 
+7fcd9b51b000-7fcd9b520000 r-xp 00000000 08:02 5767187                    /lib/libnss_dns-2.11.3.so
+7fcd9b520000-7fcd9b71f000 ---p 00005000 08:02 5767187                    /lib/libnss_dns-2.11.3.so
+7fcd9b71f000-7fcd9b720000 r-xp 00004000 08:02 5767187                    /lib/libnss_dns-2.11.3.so
+7fcd9b720000-7fcd9b721000 rwxp 00005000 08:02 5767187                    /lib/libnss_dns-2.11.3.so
+7fcd9b721000-7fcd9b723000 r-xp 00000000 08:02 5768618                    /lib/libnss_mdns4_minimal.so.2
+7fcd9b723000-7fcd9b922000 ---p 00002000 08:02 5768618                    /lib/libnss_mdns4_minimal.so.2
+7fcd9b922000-7fcd9b923000 rwxp 00001000 08:02 5768618                    /lib/libnss_mdns4_minimal.so.2
+7fcd9b923000-7fcd9b926000 r-xp 00000000 08:02 5512254                    /usr/lib/libgpg-error.so.0.4.0
+7fcd9b926000-7fcd9bb25000 ---p 00003000 08:02 5512254                    /usr/lib/libgpg-error.so.0.4.0
+7fcd9bb25000-7fcd9bb26000 rwxp 00002000 08:02 5512254                    /usr/lib/libgpg-error.so.0.4.0
+7fcd9bb26000-7fcd9bb9a000 r-xp 00000000 08:02 5508521                    /usr/lib/libgcrypt.so.11.5.3
+7fcd9bb9a000-7fcd9bd9a000 ---p 00074000 08:02 5508521                    /usr/lib/libgcrypt.so.11.5.3
+7fcd9bd9a000-7fcd9bd9e000 rwxp 00074000 08:02 5508521                    /usr/lib/libgcrypt.so.11.5.3
+7fcd9bd9e000-7fcd9bdb5000 r-xp 00000000 08:02 5507859                    /usr/lib/libz.so.1.2.3.4
+7fcd9bdb5000-7fcd9bfb4000 ---p 00017000 08:02 5507859                    /usr/lib/libz.so.1.2.3.4
+7fcd9bfb4000-7fcd9bfb5000 rwxp 00016000 08:02 5507859                    /usr/lib/libz.so.1.2.3.4
+7fcd9bfb5000-7fcd9bfc5000 r-xp 00000000 08:02 5512258                    /usr/lib/libtasn1.so.3.1.9
+7fcd9bfc5000-7fcd9c1c4000 ---p 00010000 08:02 5512258                    /usr/lib/libtasn1.so.3.1.9
+7fcd9c1c4000-7fcd9c1c5000 rwxp 0000f000 08:02 5512258                    /usr/lib/libtasn1.so.3.1.9
+7fcd9c1c5000-7fcd9c1c7000 r-xp 00000000 08:02 5770620                    /lib/libkeyutils.so.1.3
+7fcd9c1c7000-7fcd9c3c6000 ---p 00002000 08:02 5770620                    /lib/libkeyutils.so.1.3
+7fcd9c3c6000-7fcd9c3c7000 rwxp 00001000 08:02 5770620                    /lib/libkeyutils.so.1.3
+7fcd9c3c7000-7fcd9c3ce000 r-xp 00000000 08:02 5512162                    /usr/lib/libkrb5support.so.0.1
+7fcd9c3ce000-7fcd9c5ce000 ---p 00007000 08:02 5512162                    /usr/lib/libkrb5support.so.0.1
+7fcd9c5ce000-7fcd9c5cf000 rwxp 00007000 08:02 5512162                    /usr/lib/libkrb5support.so.0.1
+7fcd9c5cf000-7fcd9c5f4000 r-xp 00000000 08:02 5525941                    /usr/lib/libk5crypto.so.3.1
+7fcd9c5f4000-7fcd9c7f3000 ---p 00025000 08:02 5525941                    /usr/lib/libk5crypto.so.3.1
+7fcd9c7f3000-7fcd9c7f5000 rwxp 00024000 08:02 5525941                    /usr/lib/libk5crypto.so.3.1
+7fcd9c7f5000-7fcd9c891000 r-xp 00000000 08:02 5512260                    /usr/lib/libgnutls.so.26.14.12
+7fcd9c891000-7fcd9ca90000 ---p 0009c000 08:02 5512260                    /usr/lib/libgnutls.so.26.14.12
+7fcd9ca90000-7fcd9ca97000 rwxp 0009b000 08:02 5512260                    /usr/lib/libgnutls.so.26.14.12
+7fcd9ca97000-7fcd9caaa000 r-xp 00000000 08:02 5767172                    /lib/libresolv-2.11.3.so
+7fcd9caaa000-7fcd9cca9000 ---p 00013000 08:02 5767172                    /lib/libresolv-2.11.3.so
+7fcd9cca9000-7fcd9ccaa000 r-xp 00012000 08:02 5767172                    /lib/libresolv-2.11.3.so
+7fcd9ccaa000-7fcd9ccab000 rwxp 00013000 08:02 5767172                    /lib/libresolv-2.11.3.so
+7fcd9ccab000-7fcd9ccad000 rwxp 00000000 00:00 0 
+7fcd9ccad000-7fcd9cce0000 r-xp 00000000 08:02 5512161                    /usr/lib/libgssapi_krb5.so.2.2
+7fcd9cce0000-7fcd9cee0000 ---p 00033000 08:02 5512161                    /usr/lib/libgssapi_krb5.so.2.2
+7fcd9cee0000-7fcd9cee2000 rwxp 00033000 08:02 5512161                    /usr/lib/libgssapi_krb5.so.2.2
+7fcd9cee2000-7fcd9cee5000 r-xp 00000000 08:02 5767236                    /lib/libcom_err.so.2.1
+7fcd9cee5000-7fcd9d0e4000 ---p 00003000 08:02 5767236                    /lib/libcom_err.so.2.1
+7fcd9d0e4000-7fcd9d0e5000 rwxp 00002000 08:02 5767236                    /lib/libcom_err.so.2.1
+7fcd9d0e5000-7fcd9d1a3000 r-xp 00000000 08:02 5529240                    /usr/lib/libkrb5.so.3.3
+7fcd9d1a3000-7fcd9d3a2000 ---p 000be000 08:02 5529240                    /usr/lib/libkrb5.so.3.3
+7fcd9d3a2000-7fcd9d3ad000 rwxp 000bd000 08:02 5529240                    /usr/lib/libkrb5.so.3.3
+7fcd9d3ad000-7fcd9d3c6000 r-xp 00000000 08:02 5512427                    /usr/lib/libsasl2.so.2.0.23
+7fcd9d3c6000-7fcd9d5c5000 ---p 00019000 08:02 5512427                    /usr/lib/libsasl2.so.2.0.23
+7fcd9d5c5000-7fcd9d5c6000 rwxp 00018000 08:02 5512427                    /usr/lib/libsasl2.so.2.0.23
+7fcd9d5c6000-7fcd9d5d3000 r-xp 00000000 08:02 5512436                    /usr/lib/liblber-2.4.so.2.5.6
+7fcd9d5d3000-7fcd9d7d3000 ---p 0000d000 08:02 5512436                    /usr/lib/liblber-2.4.so.2.5.6
+7fcd9d7d3000-7fcd9d7d4000 rwxp 0000d000 08:02 5512436                    /usr/lib/liblber-2.4.so.2.5.6
+7fcd9d7d4000-7fcd9d81b000 r-xp 00000000 08:02 5512435                    /usr/lib/libldap_r-2.4.so.2.5.6
+7fcd9d81b000-7fcd9da1a000 ---p 00047000 08:02 5512435                    /usr/lib/libldap_r-2.4.so.2.5.6
+7fcd9da1a000-7fcd9da1d000 rwxp 00046000 08:02 5512435                    /usr/lib/libldap_r-2.4.so.2.5.6
+7fcd9da1d000-7fcd9da1f000 rwxp 00000000 00:00 0 
+7fcd9da1f000-7fcd9da32000 r-xp 00000000 08:02 5769704                    /lib/libnss_ldap-2.11.2.so
+7fcd9da32000-7fcd9dc31000 ---p 00013000 08:02 5769704                    /lib/libnss_ldap-2.11.2.so
+7fcd9dc31000-7fcd9dc33000 rwxp 00012000 08:02 5769704                    /lib/libnss_ldap-2.11.2.so
+7fcd9dc33000-7fcd9dc3e000 rwxp 00000000 00:00 0 
+7fcd9dc3e000-7fcd9dc4a000 r-xp 00000000 08:02 5767170                    /lib/libnss_files-2.11.3.so
+7fcd9dc4a000-7fcd9de49000 ---p 0000c000 08:02 5767170                    /lib/libnss_files-2.11.3.so
+7fcd9de49000-7fcd9de4a000 r-xp 0000b000 08:02 5767170                    /lib/libnss_files-2.11.3.so
+7fcd9de4a000-7fcd9de4b000 rwxp 0000c000 08:02 5767170                    /lib/libnss_files-2.11.3.so
+7fcd9de4b000-7fcd9de55000 r-xp 00000000 08:02 5767193                    /lib/libnss_nis-2.11.3.so
+7fcd9de55000-7fcd9e054000 ---p 0000a000 08:02 5767193                    /lib/libnss_nis-2.11.3.so
+7fcd9e054000-7fcd9e055000 r-xp 00009000 08:02 5767193                    /lib/libnss_nis-2.11.3.so
+7fcd9e055000-7fcd9e056000 rwxp 0000a000 08:02 5767193                    /lib/libnss_nis-2.11.3.so
+7fcd9e056000-7fcd9e05d000 r-xp 00000000 08:02 5767178                    /lib/libnss_compat-2.11.3.so
+7fcd9e05d000-7fcd9e25c000 ---p 00007000 08:02 5767178                    /lib/libnss_compat-2.11.3.so
+7fcd9e25c000-7fcd9e25d000 r-xp 00006000 08:02 5767178                    /lib/libnss_compat-2.11.3.so
+7fcd9e25d000-7fcd9e25e000 rwxp 00007000 08:02 5767178                    /lib/libnss_compat-2.11.3.so
+7fcd9e25e000-7fcd9e273000 r-xp 00000000 08:02 5767183                    /lib/libnsl-2.11.3.so
+7fcd9e273000-7fcd9e472000 ---p 00015000 08:02 5767183                    /lib/libnsl-2.11.3.so
+7fcd9e472000-7fcd9e473000 r-xp 00014000 08:02 5767183                    /lib/libnsl-2.11.3.so
+7fcd9e473000-7fcd9e474000 rwxp 00015000 08:02 5767183                    /lib/libnsl-2.11.3.so
+7fcd9e474000-7fcd9e476000 rwxp 00000000 00:00 0 
+7fcd9e476000-7fcd9e49f000 r-xp 00000000 08:02 6034320                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libjava.so
+7fcd9e49f000-7fcd9e59e000 ---p 00029000 08:02 6034320                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libjava.so
+7fcd9e59e000-7fcd9e5a5000 rwxp 00028000 08:02 6034320                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libjava.so
+7fcd9e5a5000-7fcd9e5b2000 r-xp 00000000 08:02 6034330                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libverify.so
+7fcd9e5b2000-7fcd9e6b1000 ---p 0000d000 08:02 6034330                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libverify.so
+7fcd9e6b1000-7fcd9e6b4000 rwxp 0000c000 08:02 6034330                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/libverify.so
+7fcd9e6b4000-7fcd9e6bb000 r-xp 00000000 08:02 5767176                    /lib/librt-2.11.3.so
+7fcd9e6bb000-7fcd9e8ba000 ---p 00007000 08:02 5767176                    /lib/librt-2.11.3.so
+7fcd9e8ba000-7fcd9e8bb000 r-xp 00006000 08:02 5767176                    /lib/librt-2.11.3.so
+7fcd9e8bb000-7fcd9e8bc000 rwxp 00007000 08:02 5767176                    /lib/librt-2.11.3.so
+7fcd9e8bc000-7fcd9e8bf000 ---p 00000000 00:00 0 
+7fcd9e8bf000-7fcd9e9bd000 rwxp 00000000 00:00 0 
+7fcd9e9bd000-7fcd9ea3d000 r-xp 00000000 08:02 5767192                    /lib/libm-2.11.3.so
+7fcd9ea3d000-7fcd9ec3d000 ---p 00080000 08:02 5767192                    /lib/libm-2.11.3.so
+7fcd9ec3d000-7fcd9ec3e000 r-xp 00080000 08:02 5767192                    /lib/libm-2.11.3.so
+7fcd9ec3e000-7fcd9ec3f000 rwxp 00081000 08:02 5767192                    /lib/libm-2.11.3.so
+7fcd9ec3f000-7fcd9f559000 r-xp 00000000 08:02 6174622                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/server/libjvm.so
+7fcd9f559000-7fcd9f65b000 ---p 0091a000 08:02 6174622                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/server/libjvm.so
+7fcd9f65b000-7fcd9f810000 rwxp 0091c000 08:02 6174622                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/server/libjvm.so
+7fcd9f810000-7fcd9f84a000 rwxp 00000000 00:00 0 
+7fcd9f84a000-7fcd9f9a3000 r-xp 00000000 08:02 5767179                    /lib/libc-2.11.3.so
+7fcd9f9a3000-7fcd9fba2000 ---p 00159000 08:02 5767179                    /lib/libc-2.11.3.so
+7fcd9fba2000-7fcd9fba6000 r-xp 00158000 08:02 5767179                    /lib/libc-2.11.3.so
+7fcd9fba6000-7fcd9fba7000 rwxp 0015c000 08:02 5767179                    /lib/libc-2.11.3.so
+7fcd9fba7000-7fcd9fbac000 rwxp 00000000 00:00 0 
+7fcd9fbac000-7fcd9fbae000 r-xp 00000000 08:02 5767191                    /lib/libdl-2.11.3.so
+7fcd9fbae000-7fcd9fdae000 ---p 00002000 08:02 5767191                    /lib/libdl-2.11.3.so
+7fcd9fdae000-7fcd9fdaf000 r-xp 00002000 08:02 5767191                    /lib/libdl-2.11.3.so
+7fcd9fdaf000-7fcd9fdb0000 rwxp 00003000 08:02 5767191                    /lib/libdl-2.11.3.so
+7fcd9fdb0000-7fcd9fdc7000 r-xp 00000000 08:02 5767174                    /lib/libpthread-2.11.3.so
+7fcd9fdc7000-7fcd9ffc6000 ---p 00017000 08:02 5767174                    /lib/libpthread-2.11.3.so
+7fcd9ffc6000-7fcd9ffc7000 r-xp 00016000 08:02 5767174                    /lib/libpthread-2.11.3.so
+7fcd9ffc7000-7fcd9ffc8000 rwxp 00017000 08:02 5767174                    /lib/libpthread-2.11.3.so
+7fcd9ffc8000-7fcd9ffcc000 rwxp 00000000 00:00 0 
+7fcd9ffcc000-7fcd9ffea000 r-xp 00000000 08:02 5767175                    /lib/ld-2.11.3.so
+7fcd9ffeb000-7fcd9ffee000 r-xs 00027000 08:02 6034316                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/ext/sunjce_provider.jar
+7fcd9ffee000-7fcd9fff1000 r-xs 00000000 08:02 7481237                    /var/cache/fontconfig/ea47318ec9849e1a71e80a5d69d13859-le64.cache-3
+7fcd9fff1000-7fcd9fff4000 r-xs 00000000 08:02 7477526                    /var/cache/fontconfig/b5ea634b0fb353b8ea17632d1f9ef766-le64.cache-3
+7fcd9fff4000-7fcd9fff8000 r-xs 00000000 08:02 7477922                    /var/cache/fontconfig/6eb3985aa4124903f6ff08ba781cd364-le64.cache-3
+7fcd9fff8000-7fcda0001000 r-xs 00000000 08:02 7477921                    /var/cache/fontconfig/6d41288fd70b0be22e8c3a91e032eec0-le64.cache-3
+7fcda0001000-7fcda0008000 r-xs 00000000 08:02 5506250                    /usr/lib/gconv/gconv-modules.cache
+7fcda0008000-7fcda0012000 rwxp 00000000 00:00 0 
+7fcda0012000-7fcda00c8000 rwxp 00000000 00:00 0 
+7fcda00c8000-7fcda00cb000 rwxp 00000000 00:00 0 
+7fcda00cb000-7fcda00d2000 r-xp 00000000 08:02 6558069                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/jli/libjli.so
+7fcda00d2000-7fcda01d3000 ---p 00007000 08:02 6558069                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/jli/libjli.so
+7fcda01d3000-7fcda01d5000 rwxp 00008000 08:02 6558069                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/jli/libjli.so
+7fcda01d5000-7fcda01d6000 rwxp 00000000 00:00 0 
+7fcda01d8000-7fcda01db000 r-xs 00013000 08:02 5903459                    /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/jce.jar
+7fcda01db000-7fcda01dc000 r-xs 00000000 08:02 7477919                    /var/cache/fontconfig/4794a0821666d79190d59a36cb4f44b5-le64.cache-3
+7fcda01dc000-7fcda01e4000 rwxs 00000000 08:02 4456582                    /tmp/hsperfdata_kreverch/9913
+7fcda01e4000-7fcda01e5000 rwxp 00000000 00:00 0 
+7fcda01e5000-7fcda01e6000 r-xp 00000000 00:00 0 
+7fcda01e6000-7fcda01e8000 rwxp 00000000 00:00 0 
+7fcda01e8000-7fcda01e9000 r-xp 00000000 00:00 0                          [vdso]
+7fcda01e9000-7fcda01ea000 r-xp 0001d000 08:02 5767175                    /lib/ld-2.11.3.so
+7fcda01ea000-7fcda01eb000 rwxp 0001e000 08:02 5767175                    /lib/ld-2.11.3.so
+7fcda01eb000-7fcda01ec000 rwxp 00000000 00:00 0 
+7fff3d7eb000-7fff3d800000 rwxp 00000000 00:00 0                          [stack]
+ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
+
+VM Arguments:
+jvm_args: -Dfile.encoding=ANSI_X3.4-1968 
+java_command: gZFS.gui
+Launcher Type: SUN_STANDARD
+
+Environment Variables:
+PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
+LD_LIBRARY_PATH=/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64/server:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/amd64:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/../lib/amd64:/usr/lib/nx/X11/Xinerama:/usr/lib/nx/X11
+SHELL=/bin/bash
+DISPLAY=:50.0
+
+Signal Handlers:
+SIGSEGV: [libjvm.so+0x85f800], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGBUS: [libjvm.so+0x85f800], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGFPE: [libjvm.so+0x70e300], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGPIPE: SIG_IGN, sa_mask[0]=0x00001000, sa_flags=0x10000000
+SIGXFSZ: [libjvm.so+0x70e300], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGILL: [libjvm.so+0x70e300], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
+SIGUSR2: [libjvm.so+0x711110], sa_mask[0]=0x00000004, sa_flags=0x10000004
+SIGHUP: [libjvm.so+0x710d10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGINT: [libjvm.so+0x710d10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGTERM: [libjvm.so+0x710d10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+SIGQUIT: [libjvm.so+0x710d10], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
+
+
+---------------  S Y S T E M  ---------------
+
+OS:6.0.7
+
+uname:Linux 2.6.32-5-amd64 #1 SMP Fri May 10 08:43:19 UTC 2013 x86_64
+libc:glibc 2.11.3 NPTL 2.11.3 
+rlimit: STACK 8192k, CORE 0k, NPROC 160905, NOFILE 1024, AS infinity
+load average:0.00 0.03 0.05
+
+/proc/meminfo:
+MemTotal:       20605752 kB
+MemFree:         9390092 kB
+Buffers:          222028 kB
+Cached:          7007848 kB
+SwapCached:            0 kB
+Active:          8765984 kB
+Inactive:        2082540 kB
+Active(anon):    3618812 kB
+Inactive(anon):    17716 kB
+Active(file):    5147172 kB
+Inactive(file):  2064824 kB
+Unevictable:           0 kB
+Mlocked:               0 kB
+SwapTotal:       7811064 kB
+SwapFree:        7811064 kB
+Dirty:                92 kB
+Writeback:             0 kB
+AnonPages:       3618644 kB
+Mapped:           150948 kB
+Shmem:             17884 kB
+Slab:             246872 kB
+SReclaimable:     227908 kB
+SUnreclaim:        18964 kB
+KernelStack:        5456 kB
+PageTables:        31252 kB
+NFS_Unstable:          0 kB
+Bounce:                0 kB
+WritebackTmp:          0 kB
+CommitLimit:    18113940 kB
+Committed_AS:    5328168 kB
+VmallocTotal:   34359738367 kB
+VmallocUsed:      336372 kB
+VmallocChunk:   34359397708 kB
+HardwareCorrupted:     0 kB
+HugePages_Total:       0
+HugePages_Free:        0
+HugePages_Rsvd:        0
+HugePages_Surp:        0
+Hugepagesize:       2048 kB
+DirectMap4k:        7488 kB
+DirectMap2M:    20959232 kB
+
+
+CPU:total 4 (4 cores per cpu, 1 threads per core) family 6 model 23 stepping 10, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1
+
+/proc/cpuinfo:
+processor	: 0
+vendor_id	: GenuineIntel
+cpu family	: 6
+model		: 23
+model name	: Intel(R) Xeon(R) CPU           L5410  @ 2.33GHz
+stepping	: 10
+cpu MHz		: 2000.000
+cache size	: 6144 KB
+physical id	: 0
+siblings	: 4
+core id		: 0
+cpu cores	: 4
+apicid		: 0
+initial apicid	: 0
+fpu		: yes
+fpu_exception	: yes
+cpuid level	: 13
+wp		: yes
+flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority
+bogomips	: 4655.62
+clflush size	: 64
+cache_alignment	: 64
+address sizes	: 38 bits physical, 48 bits virtual
+power management:
+
+processor	: 1
+vendor_id	: GenuineIntel
+cpu family	: 6
+model		: 23
+model name	: Intel(R) Xeon(R) CPU           L5410  @ 2.33GHz
+stepping	: 10
+cpu MHz		: 2333.000
+cache size	: 6144 KB
+physical id	: 0
+siblings	: 4
+core id		: 2
+cpu cores	: 4
+apicid		: 2
+initial apicid	: 2
+fpu		: yes
+fpu_exception	: yes
+cpuid level	: 13
+wp		: yes
+flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority
+bogomips	: 4655.04
+clflush size	: 64
+cache_alignment	: 64
+address sizes	: 38 bits physical, 48 bits virtual
+power management:
+
+processor	: 2
+vendor_id	: GenuineIntel
+cpu family	: 6
+model		: 23
+model name	: Intel(R) Xeon(R) CPU           L5410  @ 2.33GHz
+stepping	: 10
+cpu MHz		: 2333.000
+cache size	: 6144 KB
+physical id	: 0
+siblings	: 4
+core id		: 1
+cpu cores	: 4
+apicid		: 1
+initial apicid	: 1
+fpu		: yes
+fpu_exception	: yes
+cpuid level	: 13
+wp		: yes
+flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority
+bogomips	: 4655.06
+clflush size	: 64
+cache_alignment	: 64
+address sizes	: 38 bits physical, 48 bits virtual
+power management:
+
+processor	: 3
+vendor_id	: GenuineIntel
+cpu family	: 6
+model		: 23
+model name	: Intel(R) Xeon(R) CPU           L5410  @ 2.33GHz
+stepping	: 10
+cpu MHz		: 2333.000
+cache size	: 6144 KB
+physical id	: 0
+siblings	: 4
+core id		: 3
+cpu cores	: 4
+apicid		: 3
+initial apicid	: 3
+fpu		: yes
+fpu_exception	: yes
+cpuid level	: 13
+wp		: yes
+flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 xsave lahf_lm tpr_shadow vnmi flexpriority
+bogomips	: 4655.00
+clflush size	: 64
+cache_alignment	: 64
+address sizes	: 38 bits physical, 48 bits virtual
+power management:
+
+
+
+Memory: 4k page, physical 20605752k(9390092k free), swap 7811064k(7811064k free)
+
+vm_info: Java HotSpot(TM) 64-Bit Server VM (20.1-b02) for linux-amd64 JRE (1.6.0_26-b03), built on May  4 2011 01:13:47 by "java_re" with gcc 3.2.2 (SuSE Linux)
+
+time: Tue Aug  6 14:45:39 2013
+elapsed time: 14 seconds
+

Property changes on: hs_err_pid9913.log
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/images/enable-server-icon.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/enable-server-icon.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/accept-database-icon-24px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/accept-database-icon-24px.png
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:mime-type
   + application/octet-stream

Index: src/images/zfs-fs-offline-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/zfs-fs-offline-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/hard-disk-offline-72px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/hard-disk-offline-72px.png
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:mime-type
   + application/octet-stream

Index: src/images/zfs-fs-online-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/zfs-fs-online-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/remove-from-database-icon.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/remove-from-database-icon.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/hard-disk-online-72px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/hard-disk-online-72px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/add-server-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/add-server-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/accept-database-icon.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/accept-database-icon.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/statusonline.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/statusonline.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/snapshot-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/snapshot-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/snapshot-24px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/snapshot-24px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/remove-server-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/remove-server-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/indicator.gif
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/indicator.gif
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/storage-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/storage-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/Actions-window-close-icon.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/Actions-window-close-icon.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/storage-24px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/storage-24px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/remove-from-database-icon.-24px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/remove-from-database-icon.-24px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/server-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/server-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/storage-server-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/storage-server-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/hard-disk-72px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/hard-disk-72px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/off-server-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/off-server-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/snapshot-offline-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/snapshot-offline-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/enable-server-icon-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/enable-server-icon-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/images/storage-offline-32px.png
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: src/images/storage-offline-32px.png
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: src/org/eclipse/wb/swt/SWTResourceManager.java
===================================================================
--- src/org/eclipse/wb/swt/SWTResourceManager.java	(revision 0)
+++ src/org/eclipse/wb/swt/SWTResourceManager.java	(revision 14)
@@ -0,0 +1,447 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Google, Inc.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *    Google, Inc. - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.wb.swt;
+
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Cursor;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.FontData;
+import org.eclipse.swt.graphics.GC;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.ImageData;
+import org.eclipse.swt.graphics.RGB;
+import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Utility class for managing OS resources associated with SWT controls such as colors, fonts, images, etc.
+ * <p>
+ * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code> method to release the
+ * operating system resources managed by cached objects when those objects and OS resources are no longer
+ * needed (e.g. on application shutdown)
+ * <p>
+ * This class may be freely distributed as part of any application or plugin.
+ * <p>
+ * @author scheglov_ke
+ * @author Dan Rubel
+ */
+public class SWTResourceManager {
+	////////////////////////////////////////////////////////////////////////////
+	//
+	// Color
+	//
+	////////////////////////////////////////////////////////////////////////////
+	private static Map<RGB, Color> m_colorMap = new HashMap<RGB, Color>();
+	/**
+	 * Returns the system {@link Color} matching the specific ID.
+	 * 
+	 * @param systemColorID
+	 *            the ID value for the color
+	 * @return the system {@link Color} matching the specific ID
+	 */
+	public static Color getColor(int systemColorID) {
+		Display display = Display.getCurrent();
+		return display.getSystemColor(systemColorID);
+	}
+	/**
+	 * Returns a {@link Color} given its red, green and blue component values.
+	 * 
+	 * @param r
+	 *            the red component of the color
+	 * @param g
+	 *            the green component of the color
+	 * @param b
+	 *            the blue component of the color
+	 * @return the {@link Color} matching the given red, green and blue component values
+	 */
+	public static Color getColor(int r, int g, int b) {
+		return getColor(new RGB(r, g, b));
+	}
+	/**
+	 * Returns a {@link Color} given its RGB value.
+	 * 
+	 * @param rgb
+	 *            the {@link RGB} value of the color
+	 * @return the {@link Color} matching the RGB value
+	 */
+	public static Color getColor(RGB rgb) {
+		Color color = m_colorMap.get(rgb);
+		if (color == null) {
+			Display display = Display.getCurrent();
+			color = new Color(display, rgb);
+			m_colorMap.put(rgb, color);
+		}
+		return color;
+	}
+	/**
+	 * Dispose of all the cached {@link Color}'s.
+	 */
+	public static void disposeColors() {
+		for (Color color : m_colorMap.values()) {
+			color.dispose();
+		}
+		m_colorMap.clear();
+	}
+	////////////////////////////////////////////////////////////////////////////
+	//
+	// Image
+	//
+	////////////////////////////////////////////////////////////////////////////
+	/**
+	 * Maps image paths to images.
+	 */
+	private static Map<String, Image> m_imageMap = new HashMap<String, Image>();
+	/**
+	 * Returns an {@link Image} encoded by the specified {@link InputStream}.
+	 * 
+	 * @param stream
+	 *            the {@link InputStream} encoding the image data
+	 * @return the {@link Image} encoded by the specified input stream
+	 */
+	protected static Image getImage(InputStream stream) throws IOException {
+		try {
+			Display display = Display.getCurrent();
+			ImageData data = new ImageData(stream);
+			if (data.transparentPixel > 0) {
+				return new Image(display, data, data.getTransparencyMask());
+			}
+			return new Image(display, data);
+		} finally {
+			stream.close();
+		}
+	}
+	/**
+	 * Returns an {@link Image} stored in the file at the specified path.
+	 * 
+	 * @param path
+	 *            the path to the image file
+	 * @return the {@link Image} stored in the file at the specified path
+	 */
+	public static Image getImage(String path) {
+		Image image = m_imageMap.get(path);
+		if (image == null) {
+			try {
+				image = getImage(new FileInputStream(path));
+				m_imageMap.put(path, image);
+			} catch (Exception e) {
+				image = getMissingImage();
+				m_imageMap.put(path, image);
+			}
+		}
+		return image;
+	}
+	/**
+	 * Returns an {@link Image} stored in the file at the specified path relative to the specified class.
+	 * 
+	 * @param clazz
+	 *            the {@link Class} relative to which to find the image
+	 * @param path
+	 *            the path to the image file, if starts with <code>'/'</code>
+	 * @return the {@link Image} stored in the file at the specified path
+	 */
+	public static Image getImage(Class<?> clazz, String path) {
+		String key = clazz.getName() + '|' + path;
+		Image image = m_imageMap.get(key);
+		if (image == null) {
+			try {
+				image = getImage(clazz.getResourceAsStream(path));
+				m_imageMap.put(key, image);
+			} catch (Exception e) {
+				image = getMissingImage();
+				m_imageMap.put(key, image);
+			}
+		}
+		return image;
+	}
+	private static final int MISSING_IMAGE_SIZE = 10;
+	/**
+	 * @return the small {@link Image} that can be used as placeholder for missing image.
+	 */
+	private static Image getMissingImage() {
+		Image image = new Image(Display.getCurrent(), MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
+		//
+		GC gc = new GC(image);
+		gc.setBackground(getColor(SWT.COLOR_RED));
+		gc.fillRectangle(0, 0, MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
+		gc.dispose();
+		//
+		return image;
+	}
+	/**
+	 * Style constant for placing decorator image in top left corner of base image.
+	 */
+	public static final int TOP_LEFT = 1;
+	/**
+	 * Style constant for placing decorator image in top right corner of base image.
+	 */
+	public static final int TOP_RIGHT = 2;
+	/**
+	 * Style constant for placing decorator image in bottom left corner of base image.
+	 */
+	public static final int BOTTOM_LEFT = 3;
+	/**
+	 * Style constant for placing decorator image in bottom right corner of base image.
+	 */
+	public static final int BOTTOM_RIGHT = 4;
+	/**
+	 * Internal value.
+	 */
+	protected static final int LAST_CORNER_KEY = 5;
+	/**
+	 * Maps images to decorated images.
+	 */
+	@SuppressWarnings("unchecked")
+	private static Map<Image, Map<Image, Image>>[] m_decoratedImageMap = new Map[LAST_CORNER_KEY];
+	/**
+	 * Returns an {@link Image} composed of a base image decorated by another image.
+	 * 
+	 * @param baseImage
+	 *            the base {@link Image} that should be decorated
+	 * @param decorator
+	 *            the {@link Image} to decorate the base image
+	 * @return {@link Image} The resulting decorated image
+	 */
+	public static Image decorateImage(Image baseImage, Image decorator) {
+		return decorateImage(baseImage, decorator, BOTTOM_RIGHT);
+	}
+	/**
+	 * Returns an {@link Image} composed of a base image decorated by another image.
+	 * 
+	 * @param baseImage
+	 *            the base {@link Image} that should be decorated
+	 * @param decorator
+	 *            the {@link Image} to decorate the base image
+	 * @param corner
+	 *            the corner to place decorator image
+	 * @return the resulting decorated {@link Image}
+	 */
+	public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
+		if (corner <= 0 || corner >= LAST_CORNER_KEY) {
+			throw new IllegalArgumentException("Wrong decorate corner");
+		}
+		Map<Image, Map<Image, Image>> cornerDecoratedImageMap = m_decoratedImageMap[corner];
+		if (cornerDecoratedImageMap == null) {
+			cornerDecoratedImageMap = new HashMap<Image, Map<Image, Image>>();
+			m_decoratedImageMap[corner] = cornerDecoratedImageMap;
+		}
+		Map<Image, Image> decoratedMap = cornerDecoratedImageMap.get(baseImage);
+		if (decoratedMap == null) {
+			decoratedMap = new HashMap<Image, Image>();
+			cornerDecoratedImageMap.put(baseImage, decoratedMap);
+		}
+		//
+		Image result = decoratedMap.get(decorator);
+		if (result == null) {
+			Rectangle bib = baseImage.getBounds();
+			Rectangle dib = decorator.getBounds();
+			//
+			result = new Image(Display.getCurrent(), bib.width, bib.height);
+			//
+			GC gc = new GC(result);
+			gc.drawImage(baseImage, 0, 0);
+			if (corner == TOP_LEFT) {
+				gc.drawImage(decorator, 0, 0);
+			} else if (corner == TOP_RIGHT) {
+				gc.drawImage(decorator, bib.width - dib.width, 0);
+			} else if (corner == BOTTOM_LEFT) {
+				gc.drawImage(decorator, 0, bib.height - dib.height);
+			} else if (corner == BOTTOM_RIGHT) {
+				gc.drawImage(decorator, bib.width - dib.width, bib.height - dib.height);
+			}
+			gc.dispose();
+			//
+			decoratedMap.put(decorator, result);
+		}
+		return result;
+	}
+	/**
+	 * Dispose all of the cached {@link Image}'s.
+	 */
+	public static void disposeImages() {
+		// dispose loaded images
+		{
+			for (Image image : m_imageMap.values()) {
+				image.dispose();
+			}
+			m_imageMap.clear();
+		}
+		// dispose decorated images
+		for (int i = 0; i < m_decoratedImageMap.length; i++) {
+			Map<Image, Map<Image, Image>> cornerDecoratedImageMap = m_decoratedImageMap[i];
+			if (cornerDecoratedImageMap != null) {
+				for (Map<Image, Image> decoratedMap : cornerDecoratedImageMap.values()) {
+					for (Image image : decoratedMap.values()) {
+						image.dispose();
+					}
+					decoratedMap.clear();
+				}
+				cornerDecoratedImageMap.clear();
+			}
+		}
+	}
+	////////////////////////////////////////////////////////////////////////////
+	//
+	// Font
+	//
+	////////////////////////////////////////////////////////////////////////////
+	/**
+	 * Maps font names to fonts.
+	 */
+	private static Map<String, Font> m_fontMap = new HashMap<String, Font>();
+	/**
+	 * Maps fonts to their bold versions.
+	 */
+	private static Map<Font, Font> m_fontToBoldFontMap = new HashMap<Font, Font>();
+	/**
+	 * Returns a {@link Font} based on its name, height and style.
+	 * 
+	 * @param name
+	 *            the name of the font
+	 * @param height
+	 *            the height of the font
+	 * @param style
+	 *            the style of the font
+	 * @return {@link Font} The font matching the name, height and style
+	 */
+	public static Font getFont(String name, int height, int style) {
+		return getFont(name, height, style, false, false);
+	}
+	/**
+	 * Returns a {@link Font} based on its name, height and style. Windows-specific strikeout and underline
+	 * flags are also supported.
+	 * 
+	 * @param name
+	 *            the name of the font
+	 * @param size
+	 *            the size of the font
+	 * @param style
+	 *            the style of the font
+	 * @param strikeout
+	 *            the strikeout flag (warning: Windows only)
+	 * @param underline
+	 *            the underline flag (warning: Windows only)
+	 * @return {@link Font} The font matching the name, height, style, strikeout and underline
+	 */
+	public static Font getFont(String name, int size, int style, boolean strikeout, boolean underline) {
+		String fontName = name + '|' + size + '|' + style + '|' + strikeout + '|' + underline;
+		Font font = m_fontMap.get(fontName);
+		if (font == null) {
+			FontData fontData = new FontData(name, size, style);
+			if (strikeout || underline) {
+				try {
+					Class<?> logFontClass = Class.forName("org.eclipse.swt.internal.win32.LOGFONT"); //$NON-NLS-1$
+					Object logFont = FontData.class.getField("data").get(fontData); //$NON-NLS-1$
+					if (logFont != null && logFontClass != null) {
+						if (strikeout) {
+							logFontClass.getField("lfStrikeOut").set(logFont, Byte.valueOf((byte) 1)); //$NON-NLS-1$
+						}
+						if (underline) {
+							logFontClass.getField("lfUnderline").set(logFont, Byte.valueOf((byte) 1)); //$NON-NLS-1$
+						}
+					}
+				} catch (Throwable e) {
+					System.err.println("Unable to set underline or strikeout" + " (probably on a non-Windows platform). " + e); //$NON-NLS-1$ //$NON-NLS-2$
+				}
+			}
+			font = new Font(Display.getCurrent(), fontData);
+			m_fontMap.put(fontName, font);
+		}
+		return font;
+	}
+	/**
+	 * Returns a bold version of the given {@link Font}.
+	 * 
+	 * @param baseFont
+	 *            the {@link Font} for which a bold version is desired
+	 * @return the bold version of the given {@link Font}
+	 */
+	public static Font getBoldFont(Font baseFont) {
+		Font font = m_fontToBoldFontMap.get(baseFont);
+		if (font == null) {
+			FontData fontDatas[] = baseFont.getFontData();
+			FontData data = fontDatas[0];
+			font = new Font(Display.getCurrent(), data.getName(), data.getHeight(), SWT.BOLD);
+			m_fontToBoldFontMap.put(baseFont, font);
+		}
+		return font;
+	}
+	/**
+	 * Dispose all of the cached {@link Font}'s.
+	 */
+	public static void disposeFonts() {
+		// clear fonts
+		for (Font font : m_fontMap.values()) {
+			font.dispose();
+		}
+		m_fontMap.clear();
+		// clear bold fonts
+		for (Font font : m_fontToBoldFontMap.values()) {
+			font.dispose();
+		}
+		m_fontToBoldFontMap.clear();
+	}
+	////////////////////////////////////////////////////////////////////////////
+	//
+	// Cursor
+	//
+	////////////////////////////////////////////////////////////////////////////
+	/**
+	 * Maps IDs to cursors.
+	 */
+	private static Map<Integer, Cursor> m_idToCursorMap = new HashMap<Integer, Cursor>();
+	/**
+	 * Returns the system cursor matching the specific ID.
+	 * 
+	 * @param id
+	 *            int The ID value for the cursor
+	 * @return Cursor The system cursor matching the specific ID
+	 */
+	public static Cursor getCursor(int id) {
+		Integer key = Integer.valueOf(id);
+		Cursor cursor = m_idToCursorMap.get(key);
+		if (cursor == null) {
+			cursor = new Cursor(Display.getDefault(), id);
+			m_idToCursorMap.put(key, cursor);
+		}
+		return cursor;
+	}
+	/**
+	 * Dispose all of the cached cursors.
+	 */
+	public static void disposeCursors() {
+		for (Cursor cursor : m_idToCursorMap.values()) {
+			cursor.dispose();
+		}
+		m_idToCursorMap.clear();
+	}
+	////////////////////////////////////////////////////////////////////////////
+	//
+	// General
+	//
+	////////////////////////////////////////////////////////////////////////////
+	/**
+	 * Dispose of cached objects and their underlying OS resources. This should only be called when the cached
+	 * objects are no longer needed (e.g. on application shutdown).
+	 */
+	public static void dispose() {
+		disposeColors();
+		disposeImages();
+		disposeFonts();
+		disposeCursors();
+	}
+}
\ No newline at end of file

Property changes on: src/org/eclipse/wb/swt/SWTResourceManager.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/zfs.java
===================================================================
--- src/gZFS/zfs.java	(revision 0)
+++ src/gZFS/zfs.java	(revision 14)
@@ -0,0 +1,1422 @@
+package gZFS;
+
+import java.io.BufferedReader;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStream;
+import java.net.URL;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Hashtable;
+import java.util.List;
+import java.util.Properties;
+
+import org.apache.log4j.Level;
+import org.apache.log4j.Logger;
+import org.jfree.util.Log;
+
+import com.ibm.icu.math.BigDecimal;
+import com.jcraft.jsch.ChannelExec;
+import com.jcraft.jsch.JSch;
+import com.jcraft.jsch.JSchException;
+import com.jcraft.jsch.Session;
+
+public class zfs {
+
+
+	private Logger log = Logger.getLogger(getClass().getPackage().getName()+" "+getClass().getCanonicalName());
+
+	private String userLogin;
+	private String userPassword;
+	private String sshHost;
+	private int sshPort;
+	private Session session;
+	private Hashtable<String,Session> cacheSession = new Hashtable<String, Session>();
+	private JSch jsch = new JSch();
+	private String outCmd = null ;
+	private StringBuilder outErr ;
+	private List<Object> zpoolList = new ArrayList<Object>();
+	private List<Object> zfsList = new ArrayList<Object>();
+	private List<Object> zfsListSnapshots = new ArrayList<Object>();
+	private List<Object> zfsGetAllList = new ArrayList<Object>();
+	private List<Object> iscsiListConfigVol = new ArrayList<Object>();
+	private Hashtable<String,Object> modelZfsVolAndFS = new Hashtable<String, Object>();
+	private Hashtable<String,Object> error = new Hashtable<String, Object>();
+	private Hashtable<String,zdisk> hashDisks = new Hashtable<String, zdisk>();
+	private Hashtable<String,zraid> hashZRaid = new Hashtable<String, zraid>();
+
+	private zpool zpool;
+	private zserver zserver;
+	private zvol zvol ;
+	private zsnapshots zsnapshots;
+	private zreplicas zreplicas;
+	private ziscsi ziscsi;
+	private zdisk zdisk;
+	private zraid zraid;
+	private List<Object> sidList;
+	private List<Object> ipList;
+	private Properties prop = new Properties();
+	zfs(){
+		this.loadConfig();
+		this.setZserver();
+		this.setZpool();
+		this.setZdisk();
+		this.setZvol();
+		this.setZsnapshots();
+		this.setZreplicas();
+		this.setZiscsi();
+		this.setZraid();
+		log.setLevel((Level) Level.DEBUG);
+	}
+
+	public void setZvol(){
+		zvol= new zvol();
+	}
+
+	public gZFS.zvol getZvol(){
+		return zvol;
+	}
+
+	public boolean connectServer(String host, int port, String userLogin, String userPasswd){
+		try {
+			setSession(jsch.getSession(userLogin, host, port));
+			session.setPassword(userPasswd);
+			Properties config = new Properties();
+			config.put("StrictHostKeyChecking", "no");
+			session.setConfig(config);
+			session.connect();
+			getCacheSession().put(host, session);
+			if ( session.isConnected()){
+				log.debug("Connected");
+				return true;
+			}else{
+				log.debug("not Connected");
+				return false;
+			}
+
+		} catch (JSchException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			return false;
+		}
+	}
+	
+	public void disconnectServer(){
+		String[] keysProp = (String[]) this.getCacheSession().keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		for ( int i=0;i<keysProp.length;i++){
+			String keyProp = keysProp[i];
+			this.setSession(getCacheSession().get(keyProp));
+			session.disconnect();
+		}
+	}
+
+
+	public Boolean executeCmd(String cmd) {
+		this.setOutCmd("");
+		try {
+			
+			this.setSession(getCacheSession().get(this.getZserver().zProperties.get("serverIP").getValue()));
+			log.debug("executeCMD : "+this.getZserver().zProperties.get("serverIP").getValue());
+			ChannelExec channel = (ChannelExec) session.openChannel("exec");
+			//((ChannelExec) channel).setCommand("lqs");
+			((ChannelExec) channel).setCommand(cmd);
+			InputStream in = channel.getInputStream();
+			OutputStream out = channel.getOutputStream();
+			((ChannelExec) channel).setErrStream(System.err);
+			InputStream err = channel.getErrStream();
+			channel.connect();
+			log.debug("executeCmd "+cmd);
+			BufferedReader reader = new BufferedReader(new InputStreamReader(err));
+			outErr = new StringBuilder();
+			String line;
+			while ((line = reader.readLine()) != null) {
+				outErr.append(line);
+			}
+			byte[] tmp = new byte[1024];
+
+			while (true) {
+
+				int ind = 0;
+				while (in.available() > 0) {
+					int i = in.read(tmp, 0, 1024);
+					if (i < 0)
+						break;
+
+					this.setOutCmd(this.getOutCmd()+new String(tmp, 0, i));
+				}
+				if (channel.isClosed()) {
+					break;
+				}
+				try {
+					Thread.sleep(900);
+				} catch (Exception ee) {
+					log.debug(ee);
+				}
+			}
+			channel.disconnect();
+
+		} catch (JSchException e) {
+			// TODO Auto-generated catch block
+			log.debug("executeCMD "+e.getMessage());
+			e.printStackTrace();
+			return false;
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			log.debug("executeCmd "+e.getMessage());
+			e.printStackTrace();
+			return false;
+		}
+		/*for (int cpt=0;cpt < outCmd.length;cpt++ ) {
+			log.debug(outCmd[cpt]);
+		}*/
+		//log.debug(this.getOutCmd());
+		return true;
+	}
+
+	public Boolean zfsGetAllVolume(String volName){
+		zfsGetAllList.clear();
+		//clear this.getZvol properties
+		String[] keysProp = (String[]) this.getZvol().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		for ( int i=0;i<keysProp.length;i++){
+			String keyProp = keysProp[i];
+			this.getZvol().zProperties.get(keyProp).setMultivalues(null);
+			this.getZvol().zProperties.get(keyProp).setValue("");;
+
+		}
+		if (  this.executeCmd("/sbin/zfs get all "+volName) ){
+			log.debug(this.getOutCmd());
+			String[] Tsplit = this.getOutCmd().split("\n");
+			for (int cpt=1;cpt<Tsplit.length;cpt++){
+
+				log.debug(Tsplit[cpt].replaceAll(volName+"\\s+","").replaceAll("\n", "").replaceAll("\\s+", " "));
+				String[] TsplitLine = Tsplit[cpt].replaceAll(volName+"\\s+","").replaceAll("\n", "").replaceAll("\\s+", " ").split(" ");
+				log.debug(TsplitLine[0]);
+				if ( "creation".equalsIgnoreCase(TsplitLine[0])){
+					this.getZvol().zProperties.get("creation").setValue(TsplitLine[1]+" "+TsplitLine[2]+" "+TsplitLine[3]+" "+TsplitLine[4]+" "+TsplitLine[5]);;
+				}else{
+					//this.getZvol().zProperties.containsKey(TsplitLine[0]);
+					if (this.getZvol().zProperties.containsKey(TsplitLine[0])){
+						this.getZvol().zProperties.get(TsplitLine[0]).setValue(TsplitLine[1]);
+						log.debug("ZFS DEBUG "+this.getZvol().zProperties.get(TsplitLine[0]).getNameProperty()+" "+ this.getZvol().zProperties.get(TsplitLine[0]).getValue());
+					}
+				}
+			}
+			this.getZvol().zProperties.get("name").setValue(volName);
+			//this.getZvol().zProperties.get("name").setValue(volName);
+		}
+
+
+		return true;
+	}
+	public void zfsGetInfoByProperty(String volName, String propertyName){
+		zfsGetAllList.clear();
+		if (  this.executeCmd("/sbin/zfs get "+propertyName+" -H "+volName) ){
+			log.debug(this.getOutCmd());
+			String[] Tsplit = this.getOutCmd().split("\n");
+			for (int cpt=0;cpt<Tsplit.length;cpt++){
+
+				log.debug(Tsplit[cpt].replaceAll(volName+"\\s+","").replaceAll("\n", "").replaceAll("\\s+", " "));
+				String[] TsplitLine = Tsplit[cpt].replaceAll(volName+"\\s+","").replaceAll("\n", "").replaceAll("\\s+", " ").split(" ");
+				log.debug(TsplitLine[0]);
+				if ( "creation".equalsIgnoreCase(TsplitLine[0])){
+					this.getZvol().zProperties.get("creation").setValue(TsplitLine[1]+" "+TsplitLine[2]+" "+TsplitLine[3]+" "+TsplitLine[4]+" "+TsplitLine[5]);;
+				}else{
+					//this.getZvol().zProperties.containsKey(TsplitLine[0]);
+					if (this.getZvol().zProperties.containsKey(TsplitLine[0])){
+						this.getZvol().zProperties.get(TsplitLine[0]).setValue(TsplitLine[1]);
+						log.debug("ZFS DEBUG "+this.getZvol().zProperties.get(TsplitLine[0]).getNameProperty()+" "+ this.getZvol().zProperties.get(TsplitLine[0]).getValue());
+					}
+				}
+			}
+			this.getZvol().zProperties.get("name").setValue(volName);
+			//this.getZvol().zProperties.get("name").setValue(volName);
+		}
+
+	}
+
+
+	public Boolean zpoolGetAll(String zpoolName){
+		zfsGetAllList.clear();
+		//clear this.getZvol properties
+		String[] keysProp = (String[]) this.getZpool().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		for ( int i=0;i<keysProp.length;i++){
+			String keyProp = keysProp[i];
+			this.getZpool().zProperties.get(keyProp).setMultivalues(null);
+			this.getZpool().zProperties.get(keyProp).setValue("");;
+
+		}
+		if (  this.executeCmd("/sbin/zpool get all "+zpoolName) ){
+			log.debug(this.getOutCmd());
+			String[] Tsplit = this.getOutCmd().split("\n");
+			for (int cpt=1;cpt<Tsplit.length;cpt++){
+
+				log.debug(Tsplit[cpt].replaceAll(zpoolName+"\\s+","").replaceAll("\n", "").replaceAll("\\s+", " "));
+				String[] TsplitLine = Tsplit[cpt].replaceAll(zpoolName+"\\s+","").replaceAll("\n", "").replaceAll("\\s+", " ").split(" ");
+				log.debug(TsplitLine[0]);
+				if ( "creation".equalsIgnoreCase(TsplitLine[0])){
+					this.getZpool().zProperties.get("creation").setValue(TsplitLine[1]+" "+TsplitLine[2]+" "+TsplitLine[3]+" "+TsplitLine[4]+" "+TsplitLine[5]);;
+				}else{
+					//this.getZpool().zProperties.containsKey(TsplitLine[0]);
+					if (this.getZpool().zProperties.containsKey(TsplitLine[0])){
+						this.getZpool().zProperties.get(TsplitLine[0]).setValue(TsplitLine[1]);
+						log.debug("ZFS DEBUG "+this.getZpool().zProperties.get(TsplitLine[0]).getNameProperty()+" "+ this.getZpool().zProperties.get(TsplitLine[0]).getValue());
+					}
+				}
+			}
+			this.getZpool().zProperties.get("name").setValue(zpoolName);
+			//this.getZvol().zProperties.get("name").setValue(volName);
+
+			this.getZpoolRealUseableSpace(zpoolName);
+			log.debug("zpoolGetAll "+this.getZpool().zProperties.get("realuseablespace").getValue());
+			this.getZpoolProvisionedSpace(zpoolName);
+			if (  this.executeCmd(this.getZserver().zProperties.get("binzpoolgetstate").getValue()+" -n "+this.getZpool().zProperties.get("name").getValue()) ){
+				log.debug(this.getOutCmd());
+				String[] TsplitOut = this.getOutCmd().split("\n");
+				for (int cpt=1;cpt<TsplitOut.length;cpt++){
+
+					String[] TsplitLineState= TsplitOut[cpt].replaceAll("\n","").split(":");
+					log.debug(TsplitLineState[0]);
+					//this.getZpool().zProperties.containsKey(TsplitLine[0]);
+					if (this.getZpool().zProperties.containsKey(TsplitLineState[0])){
+						this.getZpool().zProperties.get(TsplitLineState[0]).setValue(TsplitLineState[1]);
+						log.debug("ZFS DEBUG "+this.getZpool().zProperties.get(TsplitLineState[0]).getNameProperty()+" "+ this.getZpool().zProperties.get(TsplitLineState[0]).getValue());
+					}
+				}
+				this.getZpool().zProperties.get("name").setValue(zpoolName);
+			}
+
+		}
+
+
+		return true;
+	}
+
+
+	public List<Object> zpoolList(){
+		zpoolList.clear();
+
+		if (  this.executeCmd("/sbin/zpool list -H") ){
+			String[] Tsplit = this.getOutCmd().split("\n");
+			for (int cpt=0;cpt<Tsplit.length;cpt++){
+				log.debug(Tsplit[cpt].split("\\s+")[0] );
+				zpoolList.add(Tsplit[cpt].split("\\s+")[0]);
+				//zpoolNames[ind] = Tsplit[cpt].split("\\s+")[0];
+			}
+		}
+		return zpoolList;
+	}
+
+	public List<Object> zfsListSnapshotsByVolFS(String nameVolFS){
+		zfsListSnapshots.clear();
+
+		log.debug("zfs list -H -r -t snapshot -oname,used,referenced "+nameVolFS);
+		if (  this.executeCmd("/sbin/zfs list -H -r -t snapshot "+nameVolFS) ){
+			if ( this.getOutCmd().length() >0){
+				String[] Tsplit = this.getOutCmd().split("\n");
+				for (int cpt=0;cpt<Tsplit.length;cpt++){
+					log.debug(Tsplit[cpt].split("\\s+")[0] );
+					zfsListSnapshots.add(Tsplit[cpt].split("\\s+")[0]);
+					//zpoolNames[ind] = Tsplit[cpt].split("\\s+")[0];
+				}	
+			}
+
+		}
+		return zfsListSnapshots;
+	}
+
+	public Boolean getIscsiListConfigVol(String nameVolFS){
+		sidList = new ArrayList<Object>();
+		ipList = new ArrayList<Object>();
+		//sidList=null;
+		//ipList=null;
+		log.debug("get-conf-iscsi-volume nameVolFS");
+		//Reset ziscsi object
+		this.setZiscsi();
+		if (  this.executeCmd("/sbin/get-conf-iscsi-volume "+nameVolFS) ){
+			String[] Tsplit = this.getOutCmd().split("\n");
+			for (int cpt=0;cpt<Tsplit.length;cpt++){
+
+				String[] TsplitLine = Tsplit[cpt].replaceAll("\n", "").replaceAll("\\s+", " ").split(" ");
+				if ( "sid".equalsIgnoreCase(TsplitLine[0])){
+					sidList.add(TsplitLine[1]);
+				}else{
+					if ("sessionIP".equalsIgnoreCase(TsplitLine[0])){
+						ipList.add(TsplitLine[1]);
+						log.debug("sessionIP "+TsplitLine[1]);
+					}else{
+						//this.getZvol().zProperties.containsKey(TsplitLine[0]);
+						if (this.getZiscsi().zProperties.containsKey(TsplitLine[0])){
+							this.getZiscsi().zProperties.get(TsplitLine[0]).setValue(TsplitLine[1]);
+						}
+					}
+				}
+			}
+			this.getZiscsi().zProperties.get("name").setValue(this.getZvol().zProperties.get("name").getValue());
+			this.getZiscsi().zProperties.get("sid").setMultivalues(sidList);
+			this.getZiscsi().zProperties.get("sessionIP").setMultivalues(ipList);
+			return true;
+		}else{
+			return false;
+		}
+	}
+
+
+	public void getZpoolProvisionedSpace(String zpoolName){
+		log.debug("getZpoolProvisionedSpace "+this.getZpool().zProperties.get("realuseablespace").getValue());
+		if (  this.executeCmd("/sbin/get-provisioned-space "+zpoolName) ){
+			log.debug(this.getOutCmd());
+			String[] Tsplit = this.getOutCmd().split("\n");
+			log.debug("getZpoolProvisionedSpace "+this.getZpool().zProperties.get("realuseablespace").getValue().substring((this.getZpool().zProperties.get("realuseablespace").getValue().length())));
+
+			String refUnit = this.getZpool().zProperties.get("realuseablespace").getValue().substring((this.getZpool().zProperties.get("realuseablespace").getValue().length()-1), (this.getZpool().zProperties.get("realuseablespace").getValue().length()));
+
+
+			float totalProvisioned=0;
+			log.debug(String.valueOf(totalProvisioned)+refUnit);
+			for (int cpt=0;cpt<Tsplit.length;cpt++){
+
+				log.debug(Tsplit[cpt].replaceAll(zpoolName+"\\s+","").replaceAll("\n", "").replaceAll("\\s+", " "));
+				String[] TsplitLine = Tsplit[cpt].replaceAll("\n", "").replaceAll("\\s+", " ").split(" ");
+				log.debug(TsplitLine[0]);
+				totalProvisioned=totalProvisioned+this.convertInReferenceUnit(TsplitLine[2], refUnit);
+
+			}
+			log.debug("getZpoolProvisionedSpace "+String.valueOf(totalProvisioned)+refUnit);
+			this.getZpool().zProperties.get("provisionspace").setValue(String.valueOf(BigDecimal.valueOf(totalProvisioned).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue())+refUnit);
+			//this.getZvol().zProperties.get("name").setValue(volName);
+			log.debug(String.valueOf(totalProvisioned)+refUnit);
+
+
+		}
+	}
+
+	public void getZpoolRealUseableSpace(String zpoolName){
+
+		this.zfsGetInfoByProperty(zpoolName, "used");
+		this.zfsGetInfoByProperty(zpoolName, "available");
+		log.debug("getZpoolRealUseableSpace "+this.getZvol().zProperties.get("used").getValue());
+		String refUnit = this.getZvol().zProperties.get("used").getValue().substring(this.getZvol().zProperties.get("used").getValue().length()-1, this.getZvol().zProperties.get("used").getValue().length());
+		if (!refUnit.equalsIgnoreCase("T")&&!refUnit.equalsIgnoreCase("G")){
+			refUnit = this.getZvol().zProperties.get("available").getValue().substring(this.getZvol().zProperties.get("available").getValue().length()-1, this.getZvol().zProperties.get("available").getValue().length());
+		}
+		log.debug("getZpoolRealUseableSpace "+refUnit);
+		float usedSize = this.convertInReferenceUnit(this.getZvol().zProperties.get("used").getValue(), refUnit);
+		float availableSize = this.convertInReferenceUnit(this.getZvol().zProperties.get("available").getValue(), refUnit);
+		log.debug("getZpoolRealUseableSpace "+String.valueOf(usedSize+availableSize)+refUnit);
+		this.getZpool().zProperties.get("realuseablespace").setValue(String.valueOf(BigDecimal.valueOf(usedSize+availableSize).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue())+refUnit);
+
+	}
+
+	public void getZpoolStatus(){
+		error.clear();
+		if ( !"".equalsIgnoreCase(getZpool().zProperties.get("name").getValue())){
+
+			log.debug("getZpoolStatus");
+			hashDisks.clear();
+			hashZRaid.clear();
+			this.setZraid();
+			if ( this.executeCmd("/sbin/show-infodisk-cache")){
+				log.debug("getZpoolStatus");
+				this.setZdisk();
+				if ( outErr.length() ==0){
+					//log.debug(this.getOutCmd());
+					String namePool="";
+					if (this.getOutCmd().length()>0) {
+
+						String[] Tsplit = this.getOutCmd().split("\n");
+						for (int cpt=0;cpt<Tsplit.length;cpt++){
+							String[] TsplitLine = Tsplit[cpt].replaceAll("\n", "").replaceAll("\\s+", "").replaceAll("'", "").split(":");
+							String propertyDisk=TsplitLine[0].toLowerCase();
+							String valuePropertyDisk="";
+
+							if (TsplitLine.length==2){
+								valuePropertyDisk=TsplitLine[1];	
+							}
+
+							if (Tsplit[cpt].equalsIgnoreCase("#infoDisk#")){
+								if (!this.getZdisk().zProperties.get("path").getValue().equalsIgnoreCase("") ){
+									hashDisks.put("disk"+cpt, this.getZdisk());
+									log.debug(this.getZraid().zProperties.get("poolname").getValue()+"-"+this.getZraid().zProperties.get("raidtype").getValue()+"-"+this.getZraid().zProperties.get("raidid").getValue());
+									if (!hashZRaid.containsKey(this.getZraid().zProperties.get("poolname").getValue()+"-"+this.getZraid().zProperties.get("raidtype").getValue()+"-"+this.getZraid().zProperties.get("raidid").getValue())){
+										this.getZraid().zProperties.get("name").setValue(this.getZraid().zProperties.get("poolname").getValue()+"-"+this.getZraid().zProperties.get("raidtype").getValue()+"-"+this.getZraid().zProperties.get("raidid").getValue());
+										hashZRaid.put(this.getZraid().zProperties.get("poolname").getValue()+"-"+this.getZraid().zProperties.get("raidtype").getValue()+"-"+this.getZraid().zProperties.get("raidid").getValue(), this.getZraid());
+										this.setZraid();
+									}
+								}
+								this.setZdisk();
+							}else{
+								if (TsplitLine.length==2){
+									valuePropertyDisk=TsplitLine[1];
+
+									if (this.getZdisk().zProperties.containsKey(propertyDisk)){
+										this.getZdisk().zProperties.get(propertyDisk).setValue(valuePropertyDisk);
+										//log.debug(propertyDisk+" : "+valuePropertyDisk);
+									}
+
+									if (this.getZraid().zProperties.containsKey(propertyDisk)){
+										this.getZraid().zProperties.get(propertyDisk).setValue(valuePropertyDisk);
+
+										log.debug(propertyDisk+" : "+valuePropertyDisk);
+									}
+								}
+							}
+
+						}
+					}
+				}
+			}
+			log.debug("getZpoolStatus : "+hashDisks.size());
+			log.debug("getZpoolStatus : "+hashZRaid.size());
+			this.setHashDisks(hashDisks);
+			this.setHashZRaid(hashZRaid);	
+
+		}
+
+	}
+
+
+	public void getInfoDisk(){
+		if ( this.executeCmd(this.getZserver().zProperties.get("bingetdiskinfo").getValue() +" "+this.getZdisk().zProperties.get("path").getValue())){
+			log.debug("getZpoolStatus");
+			if ( outErr.length() ==0){
+				log.debug(this.getOutCmd());
+				if (this.getOutCmd().length()>0) {
+					String dataType="";
+					String[] Tsplit = this.getOutCmd().split("\n");
+
+
+					for (int cpt=0;cpt<Tsplit.length;cpt++){
+
+						String[] TsplitLine = Tsplit[cpt].replaceAll("\n", "").replaceAll("\\s+", "").replaceAll("'", "").split(":");
+						String propertyDisk=TsplitLine[0];
+						String valuePropertyDisk="";
+
+
+					}
+				}
+			}
+		}
+	}
+
+
+	public void getZsnapshotConfig(){
+		log.debug("getZsnapshotConfig");
+		this.setZsnapshots();
+		if (  this.executeCmd(this.getZserver().zProperties.get("bingetconfsnapshot").getValue()+" "+this.getZvol().zProperties.get("name").getValue()) ){
+			if ( outErr.length() ==0){
+				log.debug(this.getOutCmd());
+				if (this.getOutCmd().length()>0) {
+					String[] Tsplit = this.getOutCmd().split("\n");
+					for (int cpt=0;cpt<Tsplit.length;cpt++){
+						String[] TsplitLine = Tsplit[cpt].replaceAll("\n", "").replaceAll("\\s+", " ").split("=");
+						log.debug(TsplitLine.length);
+						log.debug(TsplitLine[0]+" "+TsplitLine[1]);
+
+						this.zsnapshots.zSchedulerProperties.get(TsplitLine[0]).setValue(TsplitLine[1]);
+					}	
+				}
+
+			}else{
+				log.debug(this.getOutCmd());
+				this.setZsnapshots();
+				this.getZsnapshots().zSchedulerProperties.get("name").setValue(this.getZvol().zProperties.get("name").getValue());
+				this.getZsnapshots().zSchedulerProperties.get("type").setValue(this.getZvol().zProperties.get("type").getValue());
+			}
+		}
+		this.getZsnapshots().zSchedulerProperties.get("name").setValue(this.getZvol().zProperties.get("name").getValue());
+		this.getZsnapshots().zSchedulerProperties.get("type").setValue(this.getZvol().zProperties.get("type").getValue());
+	}
+	
+	public void getZreplicaConfig(){
+		log.debug("getZreplicaConfig");
+		this.setZreplicas();
+		log.debug(this.getZserver().zProperties.get("bingetconfreplica").getValue()+" "+this.getZvol().zProperties.get("name").getValue());
+		if (  this.executeCmd(this.getZserver().zProperties.get("bingetconfreplica").getValue()+" "+this.getZvol().zProperties.get("name").getValue()) ){
+			if ( outErr.length() ==0){
+				log.debug(this.getOutCmd());
+				if (this.getOutCmd().length()>0) {
+					String[] Tsplit = this.getOutCmd().split("\n");
+					for (int cpt=0;cpt<Tsplit.length;cpt++){
+						String[] TsplitLine = Tsplit[cpt].replaceAll("\n", "").replaceAll("\\s+", " ").split("=");
+						log.debug(TsplitLine.length);
+						if (TsplitLine.length>1){
+							log.debug(TsplitLine[0]+" "+TsplitLine[1]);
+							this.zreplicas.zSchedulerProperties.get(TsplitLine[0]).setValue(TsplitLine[1]);	
+						}
+					}	
+				}
+
+			}else{
+				log.debug(this.getOutCmd());
+				this.setZreplicas();
+				this.getZreplicas().zSchedulerProperties.get("name").setValue(this.getZvol().zProperties.get("name").getValue());
+				//this.getZreplicas().zSchedulerProperties.get("type").setValue(this.getZvol().zProperties.get("type").getValue());
+			}
+		}
+		
+		
+		//this.getZsnapshots().zSchedulerProperties.get("name").setValue(this.getZvol().zProperties.get("name").getValue());
+		//this.getZreplicas().zSchedulerProperties.get("type").setValue(this.getZvol().zProperties.get("type").getValue());
+	}
+
+	public void zfsEnableSnapshots(){
+
+		String[] keysProp = (String[]) this.getZsnapshots().zSchedulerProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		error.clear();
+
+		for ( int i=0;i<keysProp.length;i++){
+			String keyProp = keysProp[i];
+			if ( !this.getZsnapshots().zSchedulerProperties.get(keyProp).getType().equals("nofreeentry") && this.getZsnapshots().zSchedulerProperties.get(keyProp).getValue().equals("") && !"fileconf".equalsIgnoreCase(keyProp)){
+				error.put(keyProp, keyProp+" cannot be empty");
+			}else{
+				if ( this.getZsnapshots().zSchedulerProperties.get(keyProp).getType().equals("nofreeentry") && this.getZsnapshots().zSchedulerProperties.get(keyProp).getMultivalues().isEmpty()){
+					error.put(keyProp, keyProp+" cannot be empty");
+				}else{
+					if (this.getZsnapshots().zSchedulerProperties.get(keyProp).getType().equals("nofreeentry") && this.getZsnapshots().zSchedulerProperties.get(keyProp).getMultivalues().contains("*") && this.getZsnapshots().zSchedulerProperties.get(keyProp).getMultivalues().size()>1){
+						error.put(keyProp, keyProp+ " All is not compatible with others selections");
+					}
+				}
+
+			}
+			log.debug(this.getZsnapshots().zSchedulerProperties.get(keyProp).getType()+" "+this.getZsnapshots().zSchedulerProperties.get(keyProp).getValue()+" "+this.getZsnapshots().zSchedulerProperties.get(keyProp).getMultivalues());
+		}
+
+		log.debug("ERROR SIZE : "+error.size());
+		if ( error.size() ==0){
+			//String contentFileCronSnapshot = this.getZsnapshots().formatCronValue(this.getZsnapshots().zSchedulerProperties.get("frequency").getValue(), this.getZsnapshots().zSchedulerProperties.get("dayofweeksnapshots").getValue());
+			for ( int i=0;i<keysProp.length;i++){
+				String keyProp = keysProp[i];
+				log.debug("zfsEnable "+keyProp);
+				if ( this.getZsnapshots().zSchedulerProperties.get(keyProp).getMultivalues() != null){
+					if ( this.getZsnapshots().zSchedulerProperties.get(keyProp).getMultivalues().size() ==1){
+						this.getZsnapshots().zSchedulerProperties.get(keyProp).setValue(this.getZsnapshots().zSchedulerProperties.get(keyProp).getMultivalues().get(0).toString());
+					}else{
+						this.getZsnapshots().zSchedulerProperties.get(keyProp).setValue("");
+						for ( int cpt=0;cpt<this.getZsnapshots().zSchedulerProperties.get(keyProp).getMultivalues().size();cpt++){
+							this.getZsnapshots().zSchedulerProperties.get(keyProp).setValue(this.getZsnapshots().zSchedulerProperties.get(keyProp).getValue()+this.getZsnapshots().zSchedulerProperties.get(keyProp).getMultivalues().get(cpt)+",");
+						}
+						this.getZsnapshots().zSchedulerProperties.get(keyProp).setValue(this.getZsnapshots().zSchedulerProperties.get(keyProp).getValue().substring(0, this.getZsnapshots().zSchedulerProperties.get(keyProp).getValue().length()-1));
+					}
+				}
+			}
+			String cronMin = this.getZsnapshots().zSchedulerProperties.get("minutesofsnapshots").getValue();
+			String cronHour = this.getZsnapshots().zSchedulerProperties.get("hoursofsnapshots").getValue();
+			String cronMonth = this.getZsnapshots().zSchedulerProperties.get("monthsnapshots").getValue();
+			String cronDayofMonth = this.getZsnapshots().zSchedulerProperties.get("dayofmonthsnapshots").getValue();
+			String cronDayofWeek = this.getZsnapshots().zSchedulerProperties.get("dayofweeksnapshots").getValue();
+			String nameVolFS=this.getZsnapshots().zSchedulerProperties.get("name").getValue();
+			String typeZFS=this.getZsnapshots().zSchedulerProperties.get("type").getValue();
+			String nbsnapshots=this.getZsnapshots().zSchedulerProperties.get("nbsnapshots").getValue();
+			if (  this.executeCmd(this.getZserver().zProperties.get("binzfsenablesnapshots").getValue()+" -m "+"\""+cronMin+"\""+
+					" -H "+"\""+cronHour+"\""+
+					" -M "+"\""+cronMonth+"\""+
+					" -D "+"\""+cronDayofMonth+"\""+
+					" -d "+"\""+cronDayofWeek+"\""+
+					" -N "+"\""+nameVolFS+"\""+
+					" -t "+"\""+typeZFS+"\""+
+					" -k "+"\""+nbsnapshots+"\"")){
+				if ( outErr.length() ==0){
+					log.debug(this.getOutCmd());
+					String[] Tsplit = this.getOutCmd().split("\n");
+					for (int cpt=0;cpt<Tsplit.length;cpt++){
+						/*String[] TsplitLine = Tsplit[cpt].replaceAll("\n", "").replaceAll("\\s+", " ").split("=");
+						log.debug(TsplitLine.length);
+						log.debug(TsplitLine[0]+" "+TsplitLine[1]);
+						this.zsnapshots.zSchedulerProperties.get(TsplitLine[0]).setValue(TsplitLine[1]);*/
+					}
+				}else{
+					log.debug(this.getOutCmd());
+					this.setZsnapshots();
+					this.getZsnapshots().zSchedulerProperties.get("name").setValue(this.getZvol().zProperties.get("name").getValue());
+					this.getZsnapshots().zSchedulerProperties.get("type").setValue(this.getZvol().zProperties.get("type").getValue());
+				}
+			}
+		}
+	}
+
+
+	public void zfsDisableSnapshots(){
+		error.clear();
+		if (  this.executeCmd(this.getZserver().zProperties.get("binzfsdisablesnapshots").getValue()+" -N "+"\""+this.getZsnapshots().zSchedulerProperties.get("name").getValue()+"\"" )){
+			if ( outErr.length() ==0){
+				log.debug(this.getOutCmd());
+			}else{
+				log.debug(this.getOutCmd());
+				if (outErr.length()>0){
+					error.put("binzfsdisablesnapshots", outErr+"\n" );
+				}
+			}
+		}
+	}
+	
+	public void zfsSnapshots(){
+		error.clear();
+		if ( this.getZsnapshots().zSchedulerProperties.get("fileconf").getValue().isEmpty()){
+			error.put("fileconf ", "Please configure the Snapshots");
+		}
+		if ( error.size() < 1){
+			if (  this.executeCmd(this.getZserver().zProperties.get("binzfssnapshots").getValue()+" "+"\""+this.getZsnapshots().zSchedulerProperties.get("fileconf").getValue()+"\"" )){
+				if ( outErr.length() ==0){
+					log.debug(this.getOutCmd());
+				}else{
+					log.debug(this.getOutCmd());
+					if (outErr.length()>0){
+						error.put("binzfssnapshots", outErr+"\n" );
+					}
+				}
+			}
+		}
+	}
+	
+
+	public void zfsEnableReplicas(){
+
+		String[] keysProp = (String[]) this.getZreplicas().zSchedulerProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		error.clear();
+
+		for ( int i=0;i<keysProp.length;i++){
+			String keyProp = keysProp[i];
+			log.debug("zfsEnableReplicas "+keyProp);
+			if ( !this.getZreplicas().zSchedulerProperties.get(keyProp).getType().equals("nofreeentry") && !this.getZreplicas().zSchedulerProperties.get(keyProp).getType().equals("noupdateable") && this.getZreplicas().zSchedulerProperties.get(keyProp).getValue().equals("")){
+				error.put(keyProp, keyProp+" cannot be empty");
+			}else{
+				if ( "nofreeentry".equalsIgnoreCase(this.getZreplicas().zSchedulerProperties.get(keyProp).getType()) && (this.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue() !=null)){
+					if ( this.getZreplicas().zSchedulerProperties.get(keyProp).getType().equals("nofreeentry") && this.getZreplicas().zSchedulerProperties.get(keyProp).getMultivalues().isEmpty()){
+						error.put(keyProp, keyProp+" cannot be empty");
+					}else{
+						if (this.getZreplicas().zSchedulerProperties.get(keyProp).getType().equals("nofreeentry") && this.getZreplicas().zSchedulerProperties.get(keyProp).getMultivalues().contains("*") && this.getZreplicas().zSchedulerProperties.get(keyProp).getMultivalues().size()>1){
+							error.put(keyProp, keyProp+ " All is not compatible with others selections");
+						}
+					}
+				}
+			}
+			log.debug(this.getZreplicas().zSchedulerProperties.get(keyProp).getType()+" "+this.getZreplicas().zSchedulerProperties.get(keyProp).getValue()+" "+this.getZreplicas().zSchedulerProperties.get(keyProp).getMultivalues());
+		}
+		if ("".equalsIgnoreCase(this.getZreplicas().zSchedulerProperties.get("replicapool").getValue())){
+			error.put("replicaPool", "replicapool cannot be empty");
+		}
+
+		log.debug("ERROR SIZE : "+error.size());
+		if ( error.size() ==0){
+			//String contentFileCronSnapshot = this.getZsnapshots().formatCronValue(this.getZsnapshots().zSchedulerProperties.get("frequency").getValue(), this.getZsnapshots().zSchedulerProperties.get("dayofweeksnapshots").getValue());
+			for ( int i=0;i<keysProp.length;i++){
+				String keyProp = keysProp[i];
+				log.debug("zfsEnable Replica"+keyProp);
+				if ( this.getZreplicas().zSchedulerProperties.get(keyProp).getMultivalues() != null){
+					if ( this.getZreplicas().zSchedulerProperties.get(keyProp).getMultivalues().size() ==1){
+						this.getZreplicas().zSchedulerProperties.get(keyProp).setValue(this.getZreplicas().zSchedulerProperties.get(keyProp).getMultivalues().get(0).toString());
+					}else{
+						this.getZreplicas().zSchedulerProperties.get(keyProp).setValue("");
+						for ( int cpt=0;cpt<this.getZreplicas().zSchedulerProperties.get(keyProp).getMultivalues().size();cpt++){
+							this.getZreplicas().zSchedulerProperties.get(keyProp).setValue(this.getZreplicas().zSchedulerProperties.get(keyProp).getValue()+this.getZreplicas().zSchedulerProperties.get(keyProp).getMultivalues().get(cpt)+",");
+						}
+						this.getZreplicas().zSchedulerProperties.get(keyProp).setValue(this.getZreplicas().zSchedulerProperties.get(keyProp).getValue().substring(0, this.getZreplicas().zSchedulerProperties.get(keyProp).getValue().length()-1));
+					}
+				}
+			}
+			String cronMin = this.getZreplicas().zSchedulerProperties.get("minutesofreplicas").getValue();
+			String cronHour = this.getZreplicas().zSchedulerProperties.get("hoursofreplicas").getValue();
+			String cronMonth = this.getZreplicas().zSchedulerProperties.get("monthreplicas").getValue();
+			String cronDayofMonth = this.getZreplicas().zSchedulerProperties.get("dayofmonthreplicas").getValue();
+			String cronDayofWeek = this.getZreplicas().zSchedulerProperties.get("dayofweekreplicas").getValue();
+			String nameVolFS=this.getZreplicas().zSchedulerProperties.get("name").getValue();
+			String nameReplica=this.getZreplicas().zSchedulerProperties.get("replicapool").getValue()+"/"+this.getZvol().zProperties.get("name").getValue().split("/")[1];
+			String lastSnapshotsReplicated=this.getZreplicas().zSchedulerProperties.get("lastsnapshotreplicated").getValue();
+			String nbReplica=this.getZreplicas().zSchedulerProperties.get("nbreplica").getValue();
+			String cmd2exec = this.getZserver().zProperties.get("binzfsenablereplicas").getValue()+" -m "+"\""+cronMin+"\""+
+					" -H "+"\""+cronHour+"\""+
+					" -M "+"\""+cronMonth+"\""+
+					" -D "+"\""+cronDayofMonth+"\""+
+					" -d "+"\""+cronDayofWeek+"\""+
+					" -o "+"\""+nameVolFS+"\""+
+					" -r "+"\""+nameReplica+"\""+
+					" -n "+"\""+nbReplica+"\"";
+			
+			if (!"".equalsIgnoreCase(this.getZreplicas().zSchedulerProperties.get("server").getValue()) && (!this.getZserver().zProperties.get("serverIP").getValue().equalsIgnoreCase(this.getZreplicas().zSchedulerProperties.get("server").getValue())) ){
+				cmd2exec = cmd2exec +" -s "+this.getZreplicas().zSchedulerProperties.get("server").getValue();
+			}
+			log.debug(cmd2exec+" "+this.getZreplicas().zSchedulerProperties.get("server").getValue()+" "+this.getZserver().zProperties.get("serverIP").getValue());
+			if (  this.executeCmd(cmd2exec)){
+				if ( outErr.length() ==0){
+					log.debug(this.getOutCmd());
+					String[] Tsplit = this.getOutCmd().split("\n");
+					for (int cpt=0;cpt<Tsplit.length;cpt++){
+						/*String[] TsplitLine = Tsplit[cpt].replaceAll("\n", "").replaceAll("\\s+", " ").split("=");
+						log.debug(TsplitLine.length);
+						log.debug(TsplitLine[0]+" "+TsplitLine[1]);
+						this.zsnapshots.zSchedulerProperties.get(TsplitLine[0]).setValue(TsplitLine[1]);*/
+					}
+				}else{
+					log.debug(this.getOutCmd());
+					this.setZreplicas();
+					this.getZreplicas().zSchedulerProperties.get("name").setValue(this.getZvol().zProperties.get("name").getValue());
+					//this.getZreplicas().zSchedulerProperties.get("type").setValue(this.getZvol().zProperties.get("type").getValue());
+				}
+			}
+		}
+	}
+	
+
+	public void zfsDisableReplicas(){
+		error.clear();
+		if (  this.executeCmd(this.getZserver().zProperties.get("binzfsdisablereplicas").getValue()+" -N "+"\""+this.getZreplicas().zSchedulerProperties.get("name").getValue()+"\"" )){
+			if ( outErr.length() ==0){
+				log.debug(this.getOutCmd());
+			}else{
+				log.debug(this.getOutCmd());
+				if (outErr.length()>0){
+					error.put("binzfsdisablereplicas", outErr+"\n" );
+				}
+			}
+		}
+	}
+	
+	public void zfsReplicas(){
+		error.clear();
+		if ( this.getZreplicas().zSchedulerProperties.get("fileconf").getValue().isEmpty()){
+			error.put("fileconf ", "Please configure the replication");
+		}
+		if ( error.size() < 1){
+			if (  this.executeCmd(this.getZserver().zProperties.get("binzfsreplica").getValue()+" "+"\""+this.getZreplicas().zSchedulerProperties.get("fileconf").getValue()+"\" &" )){
+				if ( outErr.length() ==0){
+					log.debug(this.getOutCmd());
+				}else{
+					log.debug(this.getOutCmd());
+					if (outErr.length()>0){
+						error.put("binzfsreplica", outErr+"\n" );
+					}
+				}
+			}
+		}
+	}
+	
+	
+	public void zfsCreateVolFS(){
+		error.clear();
+		if (this.getZpool().zProperties.get("name").getValue().equals("")){
+			error.put("pool", "Please select a pool");
+		}
+		String[] keysProp = (String[]) this.getZvol().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		String optionsList="";
+		for (int i = 0; i < keysProp.length; i++) {
+			String keyProp = keysProp[i];
+			log.debug(keyProp);
+			if ( ("volume".equalsIgnoreCase(this.getZvol().zProperties.get("type").getValue()) && 
+					("volume".equalsIgnoreCase(this.getZvol().zProperties.get(keyProp).getPropertyOf()) || 
+							"volandfs".equalsIgnoreCase(this.getZvol().zProperties.get(keyProp).getPropertyOf())))) {
+				if (this.getZvol().zProperties.get(keyProp).getValue().equals("")&&!this.getZvol().zProperties.get(keyProp).getType().equals("noupdateable")){
+					error.put(keyProp, keyProp+" cannot be empty");
+				}
+				if ( keyProp.equals("volblocksize")&& "".equals(this.getZvol().zProperties.get(keyProp).getValue())){
+					error.put(keyProp, keyProp+" cannot be empty");
+				}
+
+				String nameVolFS = this.getZvol().zProperties.get("name").getValue();
+				//Available space
+				if (keyProp.equals("volsize")&& !"".equals(this.getZvol().zProperties.get(keyProp).getValue())){
+					String unit = this.getZvol().zProperties.get("volsize").getValue().substring(this.getZvol().zProperties.get("volsize").getValue().length()-1, this.getZvol().zProperties.get("volsize").getValue().length());
+
+					if ( !unit.equalsIgnoreCase("T") && !unit.equalsIgnoreCase("G") && !unit.equalsIgnoreCase("M")){
+						error.put("volsize", "Field size : Unit valid est T,G or M");
+					}else{
+						Float realUseableSpace = this.convertInReferenceUnit(this.getZpool().zProperties.get("realuseablespace").getValue(), unit);
+						Float sizeVolFS = this.convertInReferenceUnit(this.getZvol().zProperties.get("volsize").getValue(), unit);
+						this.zfsGetInfoByProperty(this.getZpool().zProperties.get("name").getValue(), "used");
+						Float usedSpace = this.convertInReferenceUnit(this.getZvol().zProperties.get("used").getValue(), unit);
+						this.getZvol().zProperties.get("name").setValue(nameVolFS);
+						Float freeSpace = realUseableSpace - usedSpace;
+						if ( sizeVolFS > freeSpace){
+							error.put("freespace", "No space available. Free Pool Space : "+String.valueOf(freeSpace)+unit);
+						}	
+					}
+				}
+				log.debug("zfsCreateVolFS : "+keyProp+" "+this.getZvol().zProperties.get(keyProp).getType());
+				if (!keyProp.equals("name") &&  !this.getZvol().zProperties.get(keyProp).getType().equals("noupdateable")){
+					log.debug("zfsCreateVolFS :"+keyProp);
+					optionsList = optionsList+keyProp+"="+this.getZvol().zProperties.get(keyProp).getValue()+",";
+				}
+			}else{
+				if (("filesystem".equalsIgnoreCase(this.getZvol().zProperties.get("type").getValue()) && 
+						"fs".equalsIgnoreCase(this.getZvol().zProperties.get(keyProp).getPropertyOf())||"volandfs".equalsIgnoreCase(this.getZvol().zProperties.get(keyProp).getPropertyOf()))	){
+					if (this.getZvol().zProperties.get(keyProp).getValue().equals("")&&!this.getZvol().zProperties.get(keyProp).getType().equals("noupdateable")&&!"quota".equals(keyProp)&&!"reservation".equals(keyProp) ){
+						error.put(keyProp, keyProp+" cannot be empty");
+					}
+					if (("quota".equals(keyProp)||"reservation".equals(keyProp))&&"".equals(this.getZvol().zProperties.get(keyProp).getValue())){
+						this.getZvol().zProperties.get(keyProp).setValue("none");
+					}
+					if (("quota".equals(keyProp)||"reservation".equals(keyProp))&& !"none".equals(this.getZvol().zProperties.get(keyProp).getValue()) &&!"".equals(this.getZvol().zProperties.get(keyProp).getValue())){
+						String nameVolFS = this.getZvol().zProperties.get("name").getValue();
+						String unit = this.getZvol().zProperties.get(keyProp).getValue().substring(this.getZvol().zProperties.get(keyProp).getValue().length()-1, this.getZvol().zProperties.get(keyProp).getValue().length());	
+						if ( !unit.equalsIgnoreCase("T") && !unit.equalsIgnoreCase("G") && !unit.equalsIgnoreCase("M")){
+							error.put(keyProp, "Field "+keyProp+" : Unit valid est T,G or M");
+						}else{
+							Float realUseableSpace = this.convertInReferenceUnit(this.getZpool().zProperties.get("realuseablespace").getValue(), unit);
+							Float valueKeyProp = this.convertInReferenceUnit(this.getZvol().zProperties.get(keyProp).getValue(), unit);
+							this.zfsGetInfoByProperty(this.getZpool().zProperties.get("name").getValue(), "used");
+							Float usedSpace = this.convertInReferenceUnit(this.getZvol().zProperties.get("used").getValue(), unit);
+							this.getZvol().zProperties.get("name").setValue(nameVolFS);
+							Float freeSpace = realUseableSpace - usedSpace;
+							if ( valueKeyProp > freeSpace){
+								error.put(keyProp, "Error value for "+keyProp+" : No space available. Free Pool Space : "+String.valueOf(freeSpace)+unit);
+							}	
+						}
+					}
+					log.debug("zfsCreateVolFS : "+keyProp+" "+this.getZvol().zProperties.get(keyProp).getType());
+					if (!keyProp.equals("name") &&  !this.getZvol().zProperties.get(keyProp).getType().equals("noupdateable")){
+						log.debug("zfsCreateVolFS :"+keyProp);
+						optionsList = optionsList+keyProp+"="+this.getZvol().zProperties.get(keyProp).getValue()+",";
+					}
+				}
+
+			}
+		}
+		if (error.size()==0){
+			log.debug(optionsList);
+			if ( optionsList.length()>0){
+				optionsList=optionsList.substring(0, optionsList.length()-1);	
+			}
+
+			if ( "volume".equals(this.getZvol().zProperties.get("type").getValue())&& this.executeCmd(this.getZserver().zProperties.get("binzfscreatevolume").getValue()+" -n "+this.getZvol().zProperties.get("name").getValue()+
+					" -p "+this.getZpool().zProperties.get("name").getValue()+
+					" -b "+this.getZvol().zProperties.get("volblocksize").getValue()+
+					" -s "+this.getZvol().zProperties.get("volsize").getValue()+
+					" -o "+optionsList)){
+				if ( outErr.length() ==0){
+					log.debug(this.getOutCmd());
+				}else{
+					log.debug(this.getOutCmd());
+					error.put("binzfscreatevolume", "Incoherence : Please connect you to server and launch manualy "+this.getZserver().zProperties.get("binzfscreatevolume").getValue() );
+				}
+			}else{
+				if ("filesystem".equals(this.getZvol().zProperties.get("type").getValue())&& this.executeCmd(this.getZserver().zProperties.get("binzfscreatefilesystem").getValue()+" -n "+this.getZvol().zProperties.get("name").getValue()+
+						" -p "+this.getZpool().zProperties.get("name").getValue()+
+						" -o "+optionsList)){
+					if ( outErr.length() ==0){
+						log.debug(this.getOutCmd());
+					}else{
+						log.debug(this.getOutCmd());
+						error.put("binzfscreatefilesystem", "Incoherence : Please connect you to server and launch manualy "+this.getZserver().zProperties.get("binzfscreatefilesystem").getValue() );
+					}
+				}
+			}
+		}else{
+			log.debug("Error : "+error.size());
+		}
+	}
+
+	public void zfsUmountFS(){
+		error.clear();
+		if ("".equals(this.getZvol().zProperties.get("name").getValue())){
+			error.put("name", "Please select a ZFS FileSystem");
+		}
+		if (error.size()==0){
+			if (this.executeCmd(this.getZserver().zProperties.get("binzfs").getValue()+" umount "+this.getZvol().zProperties.get("name").getValue())){
+				if ( outErr.length() ==0){
+					log.debug(this.getOutCmd());
+				}else{
+					log.debug(this.getOutCmd());
+					if (outErr.toString().contains("Error")){
+						error.put("binzfs", "Incoherence : Please connect you to server and launch manualy "+this.getZserver().zProperties.get("binzfs").getValue() );
+					}
+				}
+			}else{
+				error.put("executeCmd", "Problem with the command : "+this.getZserver().zProperties.get("binzfs").getValue()+" umount "+this.getZvol().zProperties.get("name").getValue());
+			}
+		}
+
+	}
+
+	public void zfsDestroyVolFS(){
+		error.clear();
+		if ("".equals(this.getZvol().zProperties.get("name").getValue())){
+			error.put("name", "Please select a ZFS FileSystem");
+		}
+		if ( error.size()==0){
+			if ( "filesystem".equals(this.getZvol().zProperties.get("type").getValue())){
+				if ( this.executeCmd(this.getZserver().zProperties.get("binzfsdelfilesystem").getValue()+" -n "+this.getZvol().zProperties.get("name").getValue() )) {
+					if ( outErr.length() ==0){
+						log.debug(this.getOutCmd());
+					}else{
+						log.debug(this.getOutCmd());
+						if (outErr.length()>0){
+							error.put("binzfsdelvolume", outErr+"\n" );
+						}
+					}
+				}else{
+					error.put("executeCmd", "Problem with the command : "+this.getZserver().zProperties.get("binzfsdelfilesystem").getValue()+" -n "+this.getZvol().zProperties.get("name").getValue());
+				}	
+			}else{
+				if ( "volume".equals(this.getZvol().zProperties.get("type").getValue())){
+					if ( this.executeCmd(this.getZserver().zProperties.get("binzfsdelvolume").getValue()+" -n "+this.getZvol().zProperties.get("name").getValue() )) {
+						if ( outErr.length() ==0){
+							log.debug(this.getOutCmd());
+						}else{
+							log.debug(this.getOutCmd());
+							if (outErr.length()>0){
+								error.put("binzfsdelvolume", outErr+"\n" );
+							}
+						}
+					}else{
+						error.put("executeCmd", "Problem with the command : "+this.getZserver().zProperties.get("binzfsdelvolume").getValue()+" -n "+this.getZvol().zProperties.get("name").getValue());
+					}
+				}else{
+					if ( "snapshot".equals(this.getZvol().zProperties.get("type").getValue())){
+						if ( this.executeCmd(this.getZserver().zProperties.get("binzfsdelvolume").getValue()+" -n "+this.getZvol().zProperties.get("name").getValue() )) {
+							if ( outErr.length() ==0){
+								log.debug(this.getOutCmd());
+							}else{
+								log.debug(this.getOutCmd());
+								if (outErr.length()>0){
+									error.put("binzfsdelvolume", outErr+"\n" );
+								}
+							}
+						}else{
+							error.put("executeCmd", "Problem with the command : "+this.getZserver().zProperties.get("binzfsdelvolume").getValue()+" -n "+this.getZvol().zProperties.get("name").getValue());
+						}
+					}
+				}
+			}
+
+		}
+	}
+
+	public void zfsCreateIscsi(){
+		String[] keysProp = (String[]) this.getZiscsi().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		error.clear();
+		if ("filesystem".equals(this.getZvol().zProperties.get("type").getValue())){
+			error.put("type", "You cannot add a iscsi configuration for a zfs filesystem");
+		}
+
+		for ( int i=0;i<keysProp.length;i++){
+			String keyProp = keysProp[i];
+			if (!this.getZiscsi().zProperties.get(keyProp).getType().contains("noupdateable") && !keyProp.equalsIgnoreCase("allowIP")){
+				if ( "".equals(this.getZiscsi().zProperties.get(keyProp).getValue())) {
+					error.put(keyProp, this.getZiscsi().zProperties.get(keyProp).getLabelProperty()+" cannot be empty" );
+				}
+			}
+		}
+		if (!"".equals(this.getZiscsi().zProperties.get("tid").getValue())){
+			error.put("tid", "Iscsi is already configured for this volume" );
+		}
+
+		if ( error.size() ==0){
+			String cmd = this.getZserver().zProperties.get("binzfsaddiscsi").getValue()+" -d "+this.getZserver().zProperties.get("pathzfsvoldevice").getValue()+this.getZiscsi().zProperties.get("name").getValue()
+					+" -T "+this.getZiscsi().zProperties.get("exportType").getValue()+
+					" -L 0"+
+					" -o "+this.getZiscsi().zProperties.get("iomode").getValue()+
+					" -l "+this.getZiscsi().zProperties.get("login").getValue()+
+					" -p "+this.getZiscsi().zProperties.get("passwd").getValue()+
+					" -t "+this.getZiscsi().zProperties.get("name").getValue();
+			if (!this.getZiscsi().zProperties.get("allowIP").getValue().isEmpty()){
+				cmd = cmd +" -R "+"\""+this.getZiscsi().zProperties.get("allowIP").getValue()+"\"";
+			}
+			if (  this.executeCmd(cmd)){
+				if ( outErr.length() ==0){
+					//log.debug(this.getOutCmd());
+				}else{
+					if (outErr.toString().contains("Error")){
+						error.put("pathzfsvoldevice", "Incoherence : Please connect you to server and launch manualy "+this.getZserver().zProperties.get("binzfsaddiscsi").getValue() );
+					}
+				}
+			}
+		}		
+	}
+
+	public void zfsDelIscsi(){
+		error.clear();
+		if (!"".equals(this.getZiscsi().zProperties.get("tid").getValue())){
+			if (  this.executeCmd(this.getZserver().zProperties.get("binzfsdeliscsi").getValue()+" -T "+"\""+this.getZiscsi().zProperties.get("tid").getValue()+"\"" )){
+				if ( outErr.length() ==0){
+					log.debug(this.getOutCmd());
+				}else{
+					log.debug("zdsdelIscsi Error : " +outErr);
+					if ( outErr.toString().contains("in use")){
+						error.put("binzfsdeliscsi", outErr.toString() );	
+					}else{
+						error.put("binzfsdeliscsi", outErr+"\n"+"Incoherence : Please connect you to server and launch manualy "+this.getZserver().zProperties.get("binzfsdeliscsi").getValue() );	
+					}
+				}
+			}	
+		}
+
+	}
+
+
+	public void zfsClone(){
+		error.clear();
+		if ("".equals(this.getZvol().zProperties.get("name").getValue())){
+			error.put("name", "Please, select a volume or filesystem to clone" );
+		}
+
+		if ( error.size() ==0){
+			String cmd = this.getZserver().zProperties.get("binzfsclone").getValue()+" -n "+this.getZvol().zProperties.get("name").getValue();
+			if (  this.executeCmd(cmd)){
+				if ( outErr.length() ==0){
+					log.debug(this.getOutCmd());
+					String[] TsplitOut = this.getOutCmd().split("\n");
+					if (TsplitOut.length>0){
+						String[] TsplitLine = TsplitOut[0].split("name:");
+						if (TsplitLine.length>0){
+							this.zfsGetAllVolume(TsplitLine[1]);
+							if ("".equalsIgnoreCase(this.getZvol().zProperties.get("name").getValue())){
+								error.put("zfsclone", "Clone Creation failed");
+							}
+						}
+					}
+				}else{
+					if (outErr.length()>0){
+						error.put("zfsclone", outErr);
+					}
+				}
+			}
+		}
+	}
+
+
+	public float convertInReferenceUnit(String value2Convert, String refUnit){
+
+		float convertedValue=0;
+		log.debug("convertInReferenceUnit "+value2Convert+" "+refUnit);
+		if ( refUnit.equalsIgnoreCase("T")){
+			if (value2Convert.contains("T")){
+				convertedValue=Float.valueOf(value2Convert.substring(0, (value2Convert.length()-1)));
+			}else{
+				if (value2Convert.contains("G")){
+					convertedValue=(Float.valueOf(value2Convert.substring(0, (value2Convert.length()-1)))/1024);
+				}else{
+					if (value2Convert.contains("M")){
+						convertedValue=(Float.valueOf(value2Convert.substring(0, (value2Convert.length()-1)))/1048576);
+					}else{
+						if (value2Convert.contains("K")){
+							convertedValue=(Float.valueOf(value2Convert.substring(0, (value2Convert.length()-1)))/1073741824);
+						}
+					}
+				}
+			}
+
+		}
+
+		if ( refUnit.equalsIgnoreCase("G")){
+			if (value2Convert.contains("G")){
+				convertedValue=(Float.valueOf(value2Convert.substring(0, (value2Convert.length()-1))));
+			}else{
+				if (value2Convert.contains("T")){
+					convertedValue=(Float.valueOf(value2Convert.substring(0, (value2Convert.length()-1)))*1024);
+				}else{
+					if (value2Convert.contains("M")){
+						convertedValue=(Float.valueOf(value2Convert.substring(0, (value2Convert.length()-1)))/1024);
+					}else{
+						if (value2Convert.contains("K")){
+							convertedValue=(Float.valueOf(value2Convert.substring(0, (value2Convert.length()-1)))/1048576);
+						}
+					}
+				}
+			}
+		}
+		log.debug("getZpoolProvisionedSpace "+convertedValue);
+		return convertedValue;
+	}
+
+	public List<Object> zfsList(){
+		zfsList.clear();
+
+
+		if (  this.executeCmd("/sbin/zfs list -H") ){
+			String[] Tsplit = this.getOutCmd().split("\n");
+			for (int cpt=0;cpt<Tsplit.length;cpt++){
+				log.debug(Tsplit[cpt].split("\\s+")[0] );
+				zfsList.add(Tsplit[cpt].split("\\s+")[0]);
+				//zpoolNames[ind] = Tsplit[cpt].split("\\s+")[0];
+			}
+		}
+		return zfsList;
+	}
+
+
+	public boolean addServer(){
+
+		if (!"".equalsIgnoreCase(this.getZserver().zProperties.get("serverIP").getValue())) {
+			this.getZserver().add(System.getProperty("user.home")+prop.getProperty("serverConfDir")+this.getZserver().zProperties.get("serverIP").getValue()+".properties");
+
+		}else{
+			return false;
+		}
+		return true;
+	}
+
+	public boolean removeServer(){
+		if (!"".equalsIgnoreCase(this.getZserver().zProperties.get("serverIP").getValue())) {
+			this.getZserver().remove(System.getProperty("user.home")+prop.getProperty("serverConfDir")+this.getZserver().zProperties.get("serverIP").getValue()+".properties");
+			this.getCacheSession().remove(this.getZserver().zProperties.get("serverIP").getValue());
+		}
+		return false;
+	}
+
+	public List<Object> getListServer(){
+		String dirName = System.getProperty("user.home")+prop.getProperty("serverConfDir");
+		log.debug(System.getProperty("user.home")+prop.getProperty("serverConfDir"));
+		File dir = new File(dirName);
+		if ( !dir.exists()){
+			dir.mkdir();
+			log.debug((System.getProperty("user.home")+prop.getProperty("serverConfDir")));
+		}
+		log.debug((System.getProperty("user.home")+prop.getProperty("serverConfDir")));
+		File f = new File(System.getProperty("user.home")+prop.getProperty("serverConfDir"));
+		log.debug((System.getProperty("user.home")+prop.getProperty("serverConfDir")));
+		File[] list = f.listFiles();
+		List<Object> listServer = new ArrayList<Object>();
+		for (int i=0;i<list.length;i++){
+			listServer.add(list[i].getName().split(".properties")[0]);
+		}
+		return listServer;
+	}
+
+	public void getServer(String serverName){
+		this.getZserver().load(System.getProperty("user.home")+prop.getProperty("serverConfDir")+serverName+".properties");
+		String[] keysProp = (String[]) this.getZserver().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		error.clear();
+		for ( int i=0;i<keysProp.length;i++){
+			String keyProp = keysProp[i];
+			if (prop.containsKey(keyProp)){
+				this.getZserver().zProperties.get(keyProp).setValue(prop.getProperty(keyProp));	
+			}
+
+		}
+	}
+
+	public void checkBinEnv(){
+		String[] keysProp = (String[]) this.getZserver().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		error.clear();
+		for ( int i=0;i<keysProp.length;i++){
+			String keyProp = keysProp[i];
+			if ( !keyProp.equalsIgnoreCase("serverIP") && !keyProp.equalsIgnoreCase("userLogin") && !keyProp.equalsIgnoreCase("userPasswd")&&!keyProp.equalsIgnoreCase("pathzfsvoldevice")){
+				if (  this.executeCmd(prop.getProperty(keyProp)) && ! outErr.toString().contains("No such file or directory")){
+					log.debug(prop.getProperty(keyProp));
+					log.debug("checkBinEnv "+outErr.toString().contains("No such file or directory"));
+				}else{
+					error.put(keyProp, outErr.toString());
+				}
+			}
+		}
+	}
+
+	public void loadConfig(){
+
+		try {
+			InputStream resource = getClass().getResourceAsStream("config.properties");
+
+			prop.load(resource);
+			log.debug(prop);
+		} catch (FileNotFoundException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+	}
+	public String getUserPassword() {
+		return userPassword;
+	}
+
+
+
+	public void setUserPassword(String userPassword) {
+		this.userPassword = userPassword;
+	}
+
+
+
+	public String getUserLogin() {
+		return userLogin;
+	}
+
+
+
+	public void setUserLogin(String userLogin) {
+		this.userLogin = userLogin;
+	}
+
+
+
+	public String getSshHost() {
+		return sshHost;
+	}
+
+
+
+	public void setSshHost(String sshHost) {
+		this.sshHost = sshHost;
+	}
+
+
+
+	public int getSshPort() {
+		return sshPort;
+	}
+
+
+
+	public void setSshPort(int sshPort) {
+		this.sshPort = sshPort;
+	}
+
+	public String getOutCmd() {
+		return outCmd;
+	}
+
+	public void setOutCmd(String out) {
+		this.outCmd=out;
+	}
+
+	public Session getSession() {
+		return session;
+	}
+
+	public void setSession(Session session) {
+		this.session = session;
+	}
+
+	/**
+	 * @return the zSnapshot
+	 */
+	public zsnapshots getZsnapshots() {
+		return zsnapshots;
+	}
+
+	/**
+	 * @param zSnapshot the zSnapshot to set
+	 */
+	public void setZsnapshots() {
+		this.zsnapshots = new zsnapshots();
+	}
+
+	public zreplicas getZreplicas() {
+		return zreplicas;
+	}
+
+	public void setZreplicas() {
+		this.zreplicas = new zreplicas();
+	}
+
+	/**
+	 * @return the ziscsi
+	 */
+	public ziscsi getZiscsi() {
+		return ziscsi;
+	}
+
+	/**
+	 * @param ziscsi the ziscsi to set
+	 */
+	public void setZiscsi() {
+		this.ziscsi = new ziscsi();
+	}
+
+	/**
+	 * @return the zserver
+	 */
+	public zserver getZserver() {
+		return zserver;
+	}
+
+	/**
+	 * @param zserver the zserver to set
+	 */
+	public void setZserver() {
+		this.zserver = new zserver();
+	}
+
+	/**
+	 * @return the cacheSession
+	 */
+	public Hashtable<String,Session> getCacheSession() {
+		return cacheSession;
+	}
+
+	/**
+	 * @param cacheSession the cacheSession to set
+	 */
+	public void setCacheSession(Hashtable<String,Session> cacheSession) {
+		this.cacheSession = cacheSession;
+	}
+
+	/**
+	 * @return the zpool
+	 */
+	public zpool getZpool() {
+		return zpool;
+	}
+
+	/**
+	 * @param zpool the zpool to set
+	 */
+	public void setZpool() {
+		this.zpool = new zpool();
+	}
+
+
+	public zdisk getZdisk() {
+		return zdisk;
+	}
+
+	public void setZdisk() {
+		this.zdisk = new zdisk();
+	}
+
+	/**
+	 * @return the error
+	 */
+	public Hashtable<String,Object> getError() {
+		return error;
+	}
+
+	/**
+	 * @param error the error to set
+	 */
+	public void setError(Hashtable<String,Object> error) {
+		this.error = error;
+	}
+
+	public Hashtable<String, zdisk> getHashDisks() {
+		return hashDisks;
+	}
+
+	public void setHashDisks(Hashtable<String, zdisk> hashDisks) {
+		this.hashDisks = hashDisks;
+	}
+
+	public zraid getZraid() {
+		return zraid;
+	}
+
+	public void setZraid() {
+		this.zraid = new zraid();
+	}
+
+
+
+	public Hashtable<String, zraid> getHashZRaid() {
+		return hashZRaid;
+	}
+
+	public void setHashZRaid(Hashtable<String, zraid> hashZRaid) {
+		this.hashZRaid = hashZRaid;
+	}
+
+}
\ No newline at end of file

Property changes on: src/gZFS/zfs.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/zpool.java
===================================================================
--- src/gZFS/zpool.java	(revision 0)
+++ src/gZFS/zpool.java	(revision 14)
@@ -0,0 +1,294 @@
+package gZFS;
+
+import java.util.ArrayList;
+import java.util.Hashtable;
+import java.util.List;
+
+public class zpool {
+
+	public Hashtable<String,zProperties> zProperties = new Hashtable<String, zProperties>();
+
+	zpool(){
+		Hashtable<Object,Object> permitValueNamePool =new Hashtable<Object,Object>();
+		permitValueNamePool.clear();
+		zProperties zPropertyNamePool = new zProperties();
+		zPropertyNamePool.setNameProperty("name");
+		zPropertyNamePool.setLabelProperty("Pool Name");
+		zPropertyNamePool.setType("noupdateable");
+		zPropertyNamePool.setValue("");
+		zPropertyNamePool.setPermitValue(null);
+		zProperties.put("name", zPropertyNamePool);
+		
+		Hashtable<Object,Object> permitValueCapacity =new Hashtable<Object,Object>();
+		permitValueCapacity.clear();
+		zProperties zPropertyCapacity = new zProperties();
+		zPropertyCapacity.setNameProperty("capacity");
+		zPropertyCapacity.setLabelProperty("Capacity");
+		zPropertyCapacity.setType("noupdateable");
+		zPropertyCapacity.setValue("");
+		zPropertyCapacity.setPermitValue(null);
+		zProperties.put("capacity", zPropertyCapacity);
+		
+		Hashtable<Object,Object> permitValueAltroot =new Hashtable<Object,Object>();
+		permitValueAltroot.clear();
+		zProperties zPropertyAltroot = new zProperties();
+		zPropertyAltroot.setNameProperty("altroot");
+		zPropertyAltroot.setLabelProperty("Capacity");
+		zPropertyAltroot.setType("noupdateable");
+		zPropertyAltroot.setValue("");
+		zPropertyAltroot.setPermitValue(null);
+		zProperties.put("altroot", zPropertyAltroot);
+		
+		Hashtable<Object,Object> permitValueHealth =new Hashtable<Object,Object>();
+		permitValueHealth.clear();
+		zProperties zPropertyHealth = new zProperties();
+		zPropertyHealth.setNameProperty("health");
+		zPropertyHealth.setLabelProperty("Health of Pool");
+		zPropertyHealth.setType("noupdateable");
+		zPropertyHealth.setValue("");
+		zPropertyHealth.setPermitValue(null);
+		zProperties.put("health", zPropertyHealth);
+		
+		Hashtable<Object,Object> permitValueGuid =new Hashtable<Object,Object>();
+		permitValueGuid.clear();
+		zProperties zPropertyGuid = new zProperties();
+		zPropertyGuid.setNameProperty("guid");
+		zPropertyGuid.setLabelProperty("Guid");
+		zPropertyGuid.setType("noupdateable");
+		zPropertyGuid.setValue("");
+		zPropertyGuid.setPermitValue(null);
+		zProperties.put("guid", zPropertyGuid);
+		
+		Hashtable<Object,Object> permitValueVersion =new Hashtable<Object,Object>();
+		permitValueVersion.clear();
+		zProperties zPropertyVersion = new zProperties();
+		zPropertyVersion.setNameProperty("version");
+		zPropertyVersion.setLabelProperty("Version");
+		zPropertyVersion.setType("noupdateable");
+		zPropertyVersion.setValue("");
+		zPropertyVersion.setPermitValue(null);
+		zProperties.put("version", zPropertyVersion);
+		
+		Hashtable<Object,Object> permitValueBootfs =new Hashtable<Object,Object>();
+		permitValueBootfs.clear();
+		zProperties zPropertyBootfs = new zProperties();
+		zPropertyBootfs.setNameProperty("bootfs");
+		zPropertyBootfs.setLabelProperty("Bootfs");
+		zPropertyBootfs.setType("noupdateable");
+		zPropertyBootfs.setValue("");
+		zPropertyBootfs.setPermitValue(null);
+		zProperties.put("bootfs", zPropertyBootfs);
+		
+		Hashtable<Object,Object> permitValueDelegation =new Hashtable<Object,Object>();
+		permitValueDelegation.clear();
+		zProperties zPropertyDelegation = new zProperties();
+		zPropertyDelegation.setNameProperty("delegation");
+		zPropertyDelegation.setLabelProperty("Delegation");
+		zPropertyDelegation.setType("noupdateable");
+		zPropertyDelegation.setValue("");
+		zPropertyDelegation.setPermitValue(null);
+		zProperties.put("delegation", zPropertyDelegation);
+		
+		Hashtable<Object,Object> permitValueAutoreplace =new Hashtable<Object,Object>();
+		permitValueAutoreplace.clear();
+		zProperties zPropertyAutoreplace = new zProperties();
+		zPropertyAutoreplace.setNameProperty("autoreplace");
+		zPropertyAutoreplace.setLabelProperty("Auto replace");
+		zPropertyAutoreplace.setType("noupdateable");
+		zPropertyAutoreplace.setValue("");
+		zPropertyAutoreplace.setPermitValue(null);
+		zProperties.put("autoreplace", zPropertyAutoreplace);
+		
+		Hashtable<Object,Object> permitValueCachefile =new Hashtable<Object,Object>();
+		permitValueCachefile.clear();
+		zProperties zPropertyCachefile = new zProperties();
+		zPropertyCachefile.setNameProperty("cachefile");
+		zPropertyCachefile.setLabelProperty("Cachefile");
+		zPropertyCachefile.setType("noupdateable");
+		zPropertyCachefile.setValue("");
+		zPropertyCachefile.setPermitValue(null);
+		zProperties.put("cachefile", zPropertyCachefile);
+		
+		Hashtable<Object,Object> permitValueFailmode =new Hashtable<Object,Object>();
+		permitValueFailmode.clear();
+		zProperties zPropertyFailmode = new zProperties();
+		zPropertyFailmode.setNameProperty("failmode");
+		zPropertyFailmode.setLabelProperty("Failmode");
+		zPropertyFailmode.setType("noupdateable");
+		zPropertyFailmode.setValue("");
+		zPropertyFailmode.setPermitValue(null);
+		zProperties.put("failmode", zPropertyFailmode);
+		
+		Hashtable<Object,Object> permitValuelistsnapshots =new Hashtable<Object,Object>();
+		permitValuelistsnapshots.clear();
+		zProperties zPropertylistsnapshots = new zProperties();
+		zPropertylistsnapshots.setNameProperty("listsnapshots");
+		zPropertylistsnapshots.setLabelProperty("List snapshots");
+		zPropertylistsnapshots.setType("noupdateable");
+		zPropertylistsnapshots.setValue("");
+		zPropertylistsnapshots.setPermitValue(null);
+		zProperties.put("listsnapshots", zPropertylistsnapshots);
+		
+		Hashtable<Object,Object> permitValueAutoexpand =new Hashtable<Object,Object>();
+		permitValueAutoexpand.clear();
+		zProperties zPropertyAutoexpand = new zProperties();
+		zPropertyAutoexpand.setNameProperty("autoexpand");
+		zPropertyAutoexpand.setLabelProperty("Auto expand");
+		zPropertyAutoexpand.setType("noupdateable");
+		zPropertyAutoexpand.setValue("");
+		zPropertyAutoexpand.setPermitValue(null);
+		zProperties.put("autoexpand", zPropertyAutoexpand);
+		
+		Hashtable<Object,Object> permitValueDedupditto =new Hashtable<Object,Object>();
+		permitValueDedupditto.clear();
+		zProperties zPropertyDedupditto = new zProperties();
+		zPropertyDedupditto.setNameProperty("dedupditto");
+		zPropertyDedupditto.setLabelProperty("Dedupditto");
+		zPropertyDedupditto.setType("noupdateable");
+		zPropertyDedupditto.setValue("");
+		zPropertyDedupditto.setPermitValue(null);
+		zProperties.put("dedupditto", zPropertyDedupditto);
+		
+		Hashtable<Object,Object> permitValueDedupratio =new Hashtable<Object,Object>();
+		permitValueDedupratio.clear();
+		zProperties zPropertyDedupratio = new zProperties();
+		zPropertyDedupratio.setNameProperty("dedupratio");
+		zPropertyDedupratio.setLabelProperty("Deduplication Ratio");
+		zPropertyDedupratio.setType("noupdateable");
+		zPropertyDedupratio.setValue("");
+		zPropertyDedupratio.setPermitValue(null);
+		zProperties.put("dedupratio", zPropertyDedupratio);
+		
+		Hashtable<Object,Object> permitValueFree =new Hashtable<Object,Object>();
+		permitValueFree.clear();
+		zProperties zPropertyFree = new zProperties();
+		zPropertyFree.setNameProperty("free");
+		zPropertyFree.setLabelProperty("Free");
+		zPropertyFree.setType("noupdateable");
+		zPropertyFree.setValue("");
+		zPropertyFree.setPermitValue(null);
+		zProperties.put("free", zPropertyFree);
+		
+		Hashtable<Object,Object> permitValueAllocated =new Hashtable<Object,Object>();
+		permitValueAllocated.clear();
+		zProperties zPropertyAllocated = new zProperties();
+		zPropertyAllocated.setNameProperty("allocated");
+		zPropertyAllocated.setLabelProperty("Allocated");
+		zPropertyAllocated.setType("noupdateable");
+		zPropertyAllocated.setValue("");
+		zPropertyAllocated.setPermitValue(null);
+		zProperties.put("allocated", zPropertyAllocated);
+		
+		Hashtable<Object,Object> permitValueReadonly =new Hashtable<Object,Object>();
+		permitValueReadonly.clear();
+		zProperties zPropertyReadonly = new zProperties();
+		zPropertyReadonly.setNameProperty("readonly");
+		zPropertyReadonly.setLabelProperty("Readonly");
+		zPropertyReadonly.setType("noupdateable");
+		zPropertyReadonly.setValue("");
+		zPropertyReadonly.setPermitValue(null);
+		zProperties.put("readonly", zPropertyReadonly);
+		
+		Hashtable<Object,Object> permitValueAshift =new Hashtable<Object,Object>();
+		permitValueAshift.clear();
+		zProperties zPropertyAshift = new zProperties();
+		zPropertyAshift.setNameProperty("ashift");
+		zPropertyAshift.setLabelProperty("Ashift");
+		zPropertyAshift.setType("noupdateable");
+		zPropertyAshift.setValue("");
+		zPropertyAshift.setPermitValue(null);
+		zProperties.put("ashift", zPropertyAshift);
+		
+		Hashtable<Object,Object> permitValueComment =new Hashtable<Object,Object>();
+		permitValueComment.clear();
+		zProperties zPropertyComment = new zProperties();
+		zPropertyComment.setNameProperty("comment");
+		zPropertyComment.setLabelProperty("Comment");
+		zPropertyComment.setType("noupdateable");
+		zPropertyComment.setValue("");
+		zPropertyComment.setPermitValue(null);
+		zProperties.put("comment", zPropertyComment);
+		
+		Hashtable<Object,Object> permitValueExpandsize =new Hashtable<Object,Object>();
+		permitValueExpandsize.clear();
+		zProperties zPropertyExpandsize = new zProperties();
+		zPropertyExpandsize.setNameProperty("expandsize");
+		zPropertyExpandsize.setLabelProperty("Expandsize");
+		zPropertyExpandsize.setType("noupdateable");
+		zPropertyExpandsize.setValue("");
+		zPropertyExpandsize.setPermitValue(null);
+		zProperties.put("expandsize", zPropertyExpandsize);
+		
+		Hashtable<Object,Object> permitValueFreeing =new Hashtable<Object,Object>();
+		permitValueFreeing.clear();
+		zProperties zPropertyFreeing = new zProperties();
+		zPropertyFreeing.setNameProperty("freeing");
+		zPropertyFreeing.setLabelProperty("Freeing");
+		zPropertyFreeing.setType("noupdateable");
+		zPropertyFreeing.setValue("");
+		zPropertyFreeing.setPermitValue(null);
+		zProperties.put("freeing", zPropertyFreeing);
+		
+		
+		Hashtable<Object,Object> permitValuefeatureAsyncDestroy =new Hashtable<Object,Object>();
+		permitValuefeatureAsyncDestroy.clear();
+		zProperties zPropertyfeatureAsyncDestroy = new zProperties();
+		zPropertyfeatureAsyncDestroy.setNameProperty("feature@async_destroy");
+		zPropertyfeatureAsyncDestroy.setLabelProperty("Feature async Destroy");
+		zPropertyfeatureAsyncDestroy.setType("noupdateable");
+		zPropertyfeatureAsyncDestroy.setValue("");
+		zPropertyfeatureAsyncDestroy.setPermitValue(null);
+		zProperties.put("feature@async_destroy", zPropertyfeatureAsyncDestroy);
+		
+		Hashtable<Object,Object> permitValuefeatureEmptyBpobj =new Hashtable<Object,Object>();
+		permitValuefeatureEmptyBpobj.clear();
+		zProperties zPropertyfeatureEmptyBpobj = new zProperties();
+		zPropertyfeatureEmptyBpobj.setNameProperty("feature@empty_bpobj");
+		zPropertyfeatureEmptyBpobj.setLabelProperty("Feature Empty Bpobj");
+		zPropertyfeatureEmptyBpobj.setType("noupdateable");
+		zPropertyfeatureEmptyBpobj.setValue("");
+		zPropertyfeatureEmptyBpobj.setPermitValue(null);
+		zProperties.put("feature@empty_bpobj", zPropertyfeatureEmptyBpobj);
+		
+		Hashtable<Object,Object> permitValuefeatureLz4Compress =new Hashtable<Object,Object>();
+		permitValuefeatureLz4Compress.clear();
+		zProperties zPropertyfeatureLz4Compress = new zProperties();
+		zPropertyfeatureLz4Compress.setNameProperty("feature@lz4_compress");
+		zPropertyfeatureLz4Compress.setLabelProperty("Feature Lz4 Compression");
+		zPropertyfeatureLz4Compress.setType("noupdateable");
+		zPropertyfeatureLz4Compress.setValue("");
+		zPropertyfeatureLz4Compress.setPermitValue(null);
+		zProperties.put("feature@lz4_compress", zPropertyfeatureLz4Compress);
+		
+		Hashtable<Object,Object> permitValueProvisionSpace =new Hashtable<Object,Object>();
+		permitValueProvisionSpace.clear();
+		zProperties zPropertyProvisionSpace = new zProperties();
+		zPropertyProvisionSpace.setNameProperty("provisionspace");
+		zPropertyProvisionSpace.setLabelProperty("Provisionned Space");
+		zPropertyProvisionSpace.setType("noupdateable");
+		zPropertyProvisionSpace.setValue("");
+		zPropertyProvisionSpace.setPermitValue(null);
+		zProperties.put("provisionspace", zPropertyProvisionSpace);
+		
+		Hashtable<Object,Object> permitValueRealUseableSpace =new Hashtable<Object,Object>();
+		permitValueRealUseableSpace.clear();
+		zProperties zPropertyRealUseableSpace = new zProperties();
+		zPropertyRealUseableSpace.setNameProperty("realuseablespace");
+		zPropertyRealUseableSpace.setLabelProperty("Real Useable Space");
+		zPropertyRealUseableSpace.setType("noupdateable");
+		zPropertyRealUseableSpace.setValue("");
+		zPropertyRealUseableSpace.setPermitValue(null);
+		zProperties.put("realuseablespace", zPropertyRealUseableSpace);
+		
+		Hashtable<Object,Object> permitValueScan =new Hashtable<Object,Object>();
+		permitValueScan.clear();
+		zProperties zPropertyScan = new zProperties();
+		zPropertyScan.setNameProperty("scan");
+		zPropertyScan.setLabelProperty("Scan");
+		zPropertyScan.setType("noupdateable");
+		zPropertyScan.setValue("");
+		zPropertyScan.setPermitValue(null);
+		zProperties.put("scan", zPropertyScan);
+		
+	}
+}

Property changes on: src/gZFS/zpool.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/ziscsi.java
===================================================================
--- src/gZFS/ziscsi.java	(revision 0)
+++ src/gZFS/ziscsi.java	(revision 14)
@@ -0,0 +1,129 @@
+package gZFS;
+
+import java.util.ArrayList;
+import java.util.Hashtable;
+import java.util.List;
+
+public class ziscsi {
+	public Hashtable<String,zProperties> zProperties = new Hashtable<String, zProperties>();
+	
+	ziscsi(){
+		Hashtable<Object,Object> permitValueName = new Hashtable<Object,Object>();
+		zProperties zPropertyName = new zProperties();
+		permitValueName.clear();
+		zPropertyName.setNameProperty("name");
+		zPropertyName.setLabelProperty("Name Device");
+		zPropertyName.setType("noupdateable");
+		zPropertyName.setValue("");
+		zPropertyName.setPermitValue(null);
+		zProperties.put("name", zPropertyName);
+		
+		Hashtable<Object,Object> permitValueTID = new Hashtable<Object,Object>();
+		zProperties zPropertyTID= new zProperties();
+		permitValueTID.clear();
+		zPropertyTID.setNameProperty("tid");
+		zPropertyTID.setLabelProperty("target Id");
+		zPropertyTID.setType("noupdateable");
+		zPropertyTID.setValue("");
+		zPropertyTID.setPermitValue(null);
+		zProperties.put("tid", zPropertyTID);
+		
+		Hashtable<Object,Object> permitValueTarget = new Hashtable<Object,Object>();
+		zProperties zPropertyTarget = new zProperties();
+		permitValueTarget.clear();
+		zPropertyTarget.setNameProperty("target");
+		zPropertyTarget.setLabelProperty("Name for IQN");
+		zPropertyTarget.setType("noupdateable");
+		zPropertyTarget.setValue("");
+		zPropertyTarget.setPermitValue(null);
+		zProperties.put("target", zPropertyTarget);
+		
+		Hashtable<Object,Object> permitValueDevPath = new Hashtable<Object,Object>();
+		zProperties zPropertyDevPath = new zProperties();
+		permitValueDevPath.clear();
+		zPropertyDevPath.setNameProperty("devhPath");
+		zPropertyDevPath.setLabelProperty("Device path to iscsi export");
+		zPropertyDevPath.setType("noupdateable");
+		zPropertyDevPath.setValue("");
+		zPropertyDevPath.setPermitValue(null);
+		zProperties.put("devPath", zPropertyDevPath);
+		
+		Hashtable<Object,Object> permitValueExportType = new Hashtable<Object,Object>();
+		zProperties zPropertyExportType = new zProperties();
+		permitValueExportType.clear();
+		zPropertyExportType.setNameProperty("exportType");
+		zPropertyExportType.setLabelProperty("ISCSI Export Type");
+		zPropertyExportType.setType("nofreeentry");
+		zPropertyExportType.setValue("");
+		permitValueExportType.put("fileoio", "fileio");
+		permitValueExportType.put("blockio", "blockio");
+		zPropertyExportType.setPermitValue(permitValueExportType);
+		zProperties.put("exportType", zPropertyExportType);
+		
+		Hashtable<Object,Object> permitValueIOMode = new Hashtable<Object,Object>();
+		zProperties zPropertyIOMode = new zProperties();
+		permitValueIOMode.clear();
+		zPropertyIOMode.setNameProperty("iomode");
+		zPropertyIOMode.setLabelProperty("IO Mode");
+		zPropertyIOMode.setType("nofreeentry");
+		zPropertyIOMode.setValue("");
+		permitValueIOMode.put("wt", "wt");
+		permitValueIOMode.put("ro", "ro");
+		zPropertyIOMode.setPermitValue(permitValueIOMode);
+		zProperties.put("iomode", zPropertyIOMode);
+		
+		
+		Hashtable<Object,Object> permitValueIscsiLogin = new Hashtable<Object,Object>();
+		zProperties zPropertyIscsiLogin = new zProperties();
+		permitValueIscsiLogin.clear();
+		zPropertyIscsiLogin.setNameProperty("login");
+		zPropertyIscsiLogin.setLabelProperty("Login CHAP");
+		zPropertyIscsiLogin.setType("freeentry");
+		zPropertyIscsiLogin.setValue("");
+		zPropertyIscsiLogin.setPermitValue(null);
+		zProperties.put("login", zPropertyIscsiLogin);
+		
+		Hashtable<Object,Object> permitValueIscsiPasswd = new Hashtable<Object,Object>();
+		zProperties zPropertyIscsiPasswd = new zProperties();
+		permitValueIscsiPasswd.clear();
+		zPropertyIscsiPasswd.setNameProperty("passwd");
+		zPropertyIscsiPasswd.setLabelProperty("Password CHAP");
+		zPropertyIscsiPasswd.setType("freeentry");
+		zPropertyIscsiPasswd.setValue("");
+		zPropertyIscsiPasswd.setPermitValue(null);
+		zProperties.put("passwd", zPropertyIscsiPasswd);
+		
+		Hashtable<Object,Object> permitValueAllowIP = new Hashtable<Object,Object>();
+		zProperties zPropertyAllowIP= new zProperties();
+		permitValueAllowIP.clear();
+		zPropertyAllowIP.setNameProperty("allowIP");
+		zPropertyAllowIP.setLabelProperty("Restricted IP (separate by ;)");
+		zPropertyAllowIP.setType("freeentry");
+		zPropertyAllowIP.setValue("");
+		zPropertyAllowIP.setPermitValue(null);
+		zProperties.put("allowIP", zPropertyAllowIP);
+		
+		Hashtable<Object,Object> permitValueSession = new Hashtable<Object,Object>();
+		zProperties zPropertySession= new zProperties();
+		permitValueSession.clear();
+		zPropertySession.setNameProperty("sid");
+		zPropertySession.setLabelProperty("ISCSI Session ID :)");
+		zPropertySession.setType("multinoupdateable");
+		zPropertySession.setValue("");
+		zPropertySession.setPermitValue(null);
+		zPropertySession.setMultivalues(null);
+		zProperties.put("sid", zPropertySession);
+		
+		Hashtable<Object,Object> permitValueSessionIP = new Hashtable<Object,Object>();
+		zProperties zPropertySessionIP= new zProperties();
+		permitValueSessionIP.clear();
+		zPropertySessionIP.setNameProperty("sessionIP");
+		zPropertySessionIP.setLabelProperty("ISCSI Session IP Client;)");
+		zPropertySessionIP.setType("multinoupdateable");
+		zPropertySessionIP.setValue("");
+		zPropertySessionIP.setPermitValue(null);
+		zPropertySessionIP.setMultivalues(null);
+		zProperties.put("sessionIP", zPropertySessionIP);
+	}
+
+}

Property changes on: src/gZFS/ziscsi.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/zraid.java
===================================================================
--- src/gZFS/zraid.java	(revision 0)
+++ src/gZFS/zraid.java	(revision 14)
@@ -0,0 +1,64 @@
+package gZFS;
+
+import java.util.Hashtable;
+
+public class zraid {
+
+	public Hashtable<String,zProperties> zProperties = new Hashtable<String, zProperties>();
+	zraid(){
+	
+		Hashtable<Object,Object> permitValueName = new Hashtable<Object,Object>();
+		permitValueName.clear();
+		zProperties zPropertyName = new zProperties();
+		zPropertyName.setNameProperty("name");
+		zPropertyName.setLabelProperty("Name");
+		zPropertyName.setType("noupdateable");
+		zPropertyName.setValue("");
+		zPropertyName.setPermitValue(null);
+		//zPropertyzName.setPropertyOf("volandfs");
+		zProperties.put("name", zPropertyName);
+		
+		Hashtable<Object,Object> permitValuePoolName = new Hashtable<Object,Object>();
+		permitValuePoolName.clear();
+		zProperties zPropertyPoolName = new zProperties();
+		zPropertyPoolName.setNameProperty("poolname");
+		zPropertyPoolName.setLabelProperty("PoolName");
+		zPropertyPoolName.setType("noupdateable");
+		zPropertyPoolName.setValue("");
+		zPropertyPoolName.setPermitValue(null);
+		//zPropertyzPoolName.setPropertyOf("volandfs");
+		zProperties.put("poolname", zPropertyPoolName);
+		
+		Hashtable<Object,Object> permitValueRaidID = new Hashtable<Object,Object>();
+		permitValueRaidID.clear();
+		zProperties zPropertyRaidID = new zProperties();
+		zPropertyRaidID.setNameProperty("raidid");
+		zPropertyRaidID.setLabelProperty("RaidID");
+		zPropertyRaidID.setType("noupdateable");
+		zPropertyRaidID.setValue("");
+		zPropertyRaidID.setPermitValue(null);
+		//zPropertyzRaidID.setPropertyOf("volandfs");
+		zProperties.put("raidid", zPropertyRaidID);
+		
+		Hashtable<Object,Object> permitValueRaidType = new Hashtable<Object,Object>();
+		permitValueRaidType.clear();
+		zProperties zPropertyRaidType = new zProperties();
+		zPropertyRaidType.setNameProperty("raidtype");
+		zPropertyRaidType.setLabelProperty("RaidType");
+		zPropertyRaidType.setType("noupdateable");
+		zPropertyRaidType.setValue("");
+		zPropertyRaidType.setPermitValue(null);
+		//zPropertyzRaidType.setPropertyOf("volandfs");
+		zProperties.put("raidtype", zPropertyRaidType);
+		
+		
+		
+	}
+	
+	
+	
+	
+	
+	
+	
+}

Property changes on: src/gZFS/zraid.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/guiProgress.java
===================================================================
--- src/gZFS/guiProgress.java	(revision 0)
+++ src/gZFS/guiProgress.java	(revision 14)
@@ -0,0 +1,45 @@
+package gZFS;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Monitor;
+import org.eclipse.swt.widgets.ProgressBar;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.layout.FillLayout;
+
+public class guiProgress {
+
+	protected static Shell s;
+	private ProgressBar progressBar;
+	private Boolean checker;
+
+	 //Display d = new Display();
+
+	 guiProgress(Display d, int sx, int sy) {
+	     s = new Shell(d, SWT.SYSTEM_MODAL|SWT.ON_TOP);    
+	    s.setLocation(d.getCursorLocation().x,d.getCursorLocation().y);
+	    s.setSize(50, 10);
+	    s.setLayout(new FillLayout(SWT.HORIZONTAL));
+	    ProgressBar progressBar_1 = new ProgressBar(s, SWT.Activate);
+	    
+	  }
+	    public static void main(Display d, int sx, int sy){
+	      new guiProgress(d, sx, sy);
+	    }
+	    
+	    public void open(){
+	    	s.open();
+	 	   // s.setVisible(false);
+	    }
+	    
+	    public void close(){
+	    	s.dispose();
+	    }
+	}
+		
+	 

Property changes on: src/gZFS/guiProgress.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/guiConfig.java
===================================================================
--- src/gZFS/guiConfig.java	(revision 0)
+++ src/gZFS/guiConfig.java	(revision 14)
@@ -0,0 +1,5 @@
+package gZFS;
+
+public class guiConfig {
+
+}

Property changes on: src/gZFS/guiConfig.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/zsnapshots.java
===================================================================
--- src/gZFS/zsnapshots.java	(revision 0)
+++ src/gZFS/zsnapshots.java	(revision 14)
@@ -0,0 +1,274 @@
+package gZFS;
+
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.Hashtable;
+import java.util.List;
+
+
+public class zsnapshots {
+
+	public Hashtable<String,zProperties> zProperties = new Hashtable<String, zProperties>();
+	public Hashtable<String,zProperties> zSchedulerProperties = new Hashtable<String, zProperties>();
+
+	private Hashtable<Object, Object> cronMinute = new Hashtable<Object, Object>();
+	private Hashtable<Object, Object> cronHour= new Hashtable<Object, Object>();
+	private Hashtable<Object, Object> cronMonth= new Hashtable<Object, Object>();
+	private Hashtable<Object, Object> cronDayOfMonth = new Hashtable<Object, Object>();
+	private Hashtable<Object, Object> cronDayOfWeek = new Hashtable<Object, Object>();
+	
+	zsnapshots(){
+		String valueForHash = null;
+		for (int i=1;i<61;i++){
+			
+			if ( i<10){
+				valueForHash="0"+String.valueOf(i);
+			}else{
+				valueForHash=String.valueOf(i);
+			}
+			cronMinute.put(String.valueOf(i), valueForHash);
+			if ( i ==1){
+				cronMinute.put("*", "All");
+			}else{
+				cronMinute.put("*/"+i, "Every "+valueForHash+" Minutes");	
+			}
+		}
+		
+		for (int i=0;i<24;i++){
+			if ( i<10){
+				valueForHash="0"+String.valueOf(i);
+			}else{
+				valueForHash=String.valueOf(i);
+			}
+			cronHour.put(String.valueOf(i), valueForHash);
+			if ( i ==1){
+				cronHour.put("*", "All");
+			}else{
+				cronHour.put("*/"+i, "Every "+valueForHash+" Hours");	
+			}
+		}
+		
+		cronMonth.put("01", "January");
+		cronMonth.put("02", "February");
+		cronMonth.put("03", "March");
+		cronMonth.put("04", "April");
+		cronMonth.put("05", "May");
+		cronMonth.put("06", "June");
+		cronMonth.put("07", "July");
+		cronMonth.put("08", "August");
+		cronMonth.put("09", "September");
+		cronMonth.put("10", "October");
+		cronMonth.put("11", "November");
+		cronMonth.put("12", "December");
+		cronMonth.put("*", "All");
+		
+		cronDayOfWeek.put("0", "Sunday");
+		cronDayOfWeek.put("1", "Monday");
+		cronDayOfWeek.put("2", "Tuesday");
+		cronDayOfWeek.put("3", "Wednesday");
+		cronDayOfWeek.put("4", "Thursday");
+		cronDayOfWeek.put("5", "Friday");
+		cronDayOfWeek.put("6", "Saturday");
+		cronDayOfWeek.put("*", "All");
+		
+		
+		for (int i=1;i<31;i++){
+			if ( i<10){
+				valueForHash="0"+String.valueOf(i);
+			}else{
+				valueForHash=String.valueOf(i);
+			}
+			cronDayOfMonth.put(String.valueOf(i), valueForHash);
+			if ( i ==1){
+				cronDayOfMonth.put("*", "All");
+			}else{
+				cronDayOfMonth.put("*/"+i, "Every "+valueForHash+" Days");	
+			}
+		}
+
+		Hashtable<Object, Object> permitValueNameVolFS = new Hashtable<Object, Object>();
+		zProperties zPropertyNameVolFS = new zProperties();
+		permitValueNameVolFS.clear();
+		zPropertyNameVolFS.setNameProperty("name");
+		zPropertyNameVolFS.setLabelProperty("Snapshot Name");
+		zPropertyNameVolFS.setType("noupdateable");
+		zPropertyNameVolFS.setValue("");
+		zPropertyNameVolFS.setPermitValue(null);
+		zPropertyNameVolFS.setMultivalues(null);
+		zSchedulerProperties.put("name", zPropertyNameVolFS);
+		
+		Hashtable<Object, Object> permitValueFileConf = new Hashtable<Object, Object>();
+		zProperties zPropertyFileConf = new zProperties();
+		permitValueFileConf.clear();
+		zPropertyFileConf.setNameProperty("fileconf");
+		zPropertyFileConf.setLabelProperty("Configuration File");
+		zPropertyFileConf.setType("noupdateable");
+		zPropertyFileConf.setValue("");
+		zPropertyFileConf.setPermitValue(null);
+		zPropertyFileConf.setMultivalues(null);
+		zSchedulerProperties.put("fileconf", zPropertyFileConf);
+
+		Hashtable<Object, Object> permitValueType = new Hashtable<Object, Object>();
+		zProperties zPropertyType = new zProperties();
+		permitValueType.clear();
+		zPropertyType.setNameProperty("type");
+		zPropertyType.setLabelProperty("Snapshot Type");
+		zPropertyType.setType("noupdateable");
+		zPropertyType.setValue("");
+		zPropertyType.setPermitValue(null);
+		zPropertyType.setMultivalues(null);
+		zSchedulerProperties.put("type", zPropertyType);
+
+		Hashtable<Object, Object> permitValueNbSnapshots = new Hashtable<Object, Object>();
+		zProperties zPropertyNbSnapshots = new zProperties();
+		permitValueNbSnapshots.clear();
+		zPropertyNbSnapshots.setNameProperty("nbsnapshots");
+		zPropertyNbSnapshots.setLabelProperty("Number Snapshots to keep");
+		zPropertyNbSnapshots.setType("freeentry");
+		zPropertyNbSnapshots.setValue("");
+		zPropertyNbSnapshots.setPermitValue(null);
+		zPropertyNbSnapshots.setMultivalues(null);
+		zSchedulerProperties.put("nbsnapshots", zPropertyNbSnapshots);
+
+		Hashtable<Object, Object> permitValueMinutesOfSnapshots = new Hashtable<Object, Object>();
+		zProperties zPropertyMinutesOfSnapshots = new zProperties();
+		permitValueMinutesOfSnapshots.clear();
+		zPropertyMinutesOfSnapshots.setNameProperty("minutesofsnapshots");
+		zPropertyMinutesOfSnapshots.setLabelProperty("Minutes of snapshots [0-60]");
+		zPropertyMinutesOfSnapshots.setType("nofreeentry");
+		zPropertyMinutesOfSnapshots.setValue("");
+		zPropertyMinutesOfSnapshots.setPermitValue(cronMinute);
+		zPropertyMinutesOfSnapshots.setMultivalues(null);
+		zSchedulerProperties.put("minutesofsnapshots", zPropertyMinutesOfSnapshots);
+
+		Hashtable<Object, Object> permitValueSnapshotsHours = new Hashtable<Object, Object>();
+		zProperties zPropertySnapshotsHours = new zProperties();
+		permitValueSnapshotsHours.clear();
+		zPropertySnapshotsHours.setNameProperty("hoursofsnapshots");
+		zPropertySnapshotsHours.setLabelProperty("Hour of snapshots [0-23]");
+		zPropertySnapshotsHours.setType("nofreeentry");
+		zPropertySnapshotsHours.setValue("");
+		zPropertySnapshotsHours.setPermitValue(cronHour);
+		zPropertySnapshotsHours.setMultivalues(null);
+		zSchedulerProperties.put("hoursofsnapshots", zPropertySnapshotsHours);
+
+		Hashtable<Object, Object> permitValueDayOfWeekSnapshots = new Hashtable<Object, Object>();
+		zProperties zPropertyDayOfWeekSnapshots = new zProperties();
+		permitValueDayOfWeekSnapshots.clear();
+		zPropertyDayOfWeekSnapshots.setNameProperty("dayofweeksnapshots");
+		zPropertyDayOfWeekSnapshots.setLabelProperty("Day of week of Snapshots [0-6] 0 for Sunday");
+		zPropertyDayOfWeekSnapshots.setType("nofreeentry");
+		zPropertyDayOfWeekSnapshots.setValue("");
+		zPropertyDayOfWeekSnapshots.setPermitValue(cronDayOfWeek);
+		zPropertyDayOfWeekSnapshots.setMultivalues(null);
+		zSchedulerProperties.put("dayofweeksnapshots", zPropertyDayOfWeekSnapshots);
+
+		Hashtable<Object, Object> permitValueDayOfMonthSnapshots = new Hashtable<Object, Object>();
+		zProperties zPropertyDayOfMonthSnapshots = new zProperties();
+		permitValueDayOfMonthSnapshots.clear();
+		zPropertyDayOfMonthSnapshots.setNameProperty("dayofmonthsnapshots");
+		zPropertyDayOfMonthSnapshots.setLabelProperty("Day of Month of Snapshots [1-30]");
+		zPropertyDayOfMonthSnapshots.setType("nofreeentry");
+		zPropertyDayOfMonthSnapshots.setValue("");
+		zPropertyDayOfMonthSnapshots.setPermitValue(cronDayOfMonth);
+		zPropertyDayOfMonthSnapshots.setMultivalues(null);
+		zSchedulerProperties.put("dayofmonthsnapshots", zPropertyDayOfMonthSnapshots);
+
+		Hashtable<Object, Object> permitValueMonthSnapshots = new Hashtable<Object, Object>();
+		zProperties zPropertyMonthSnapshots = new zProperties();
+		permitValueMonthSnapshots.clear();
+		zPropertyMonthSnapshots.setNameProperty("monthsnapshots");
+		zPropertyMonthSnapshots.setLabelProperty("Month");
+		zPropertyMonthSnapshots.setType("nofreeentry");
+		zPropertyMonthSnapshots.setValue("");
+		zPropertyMonthSnapshots.setPermitValue(cronMonth);
+		zPropertyMonthSnapshots.setMultivalues(null);
+		zSchedulerProperties.put("monthsnapshots", zPropertyMonthSnapshots);
+
+		/*Hashtable<Object, Object> permitValueFreqSnapshots = new Hashtable<Object, Object>();
+		zProperties zPropertyFreqSnapshots = new zProperties();
+		permitValueFreqSnapshots.clear();
+		zPropertyFreqSnapshots.setNameProperty("frequency");
+		zPropertyFreqSnapshots.setLabelProperty("Frequency");
+		zPropertyFreqSnapshots.setType("internaluse");
+		zPropertyFreqSnapshots.setValue("");
+		zPropertyFreqSnapshots.setPermitValue(null);
+		zSchedulerProperties.put("frequency", zPropertyFreqSnapshots);*/
+
+
+	}
+
+	public void formatCronValue(String frequency, String DaySnapshot){
+		String cronValue ="";
+
+		if (frequency.contains("Hours")){
+			this.zSchedulerProperties.get("minutesofsnaphots").setValue("*");
+			this.zSchedulerProperties.get("hoursofsnaphots").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Hours", ""));
+			this.zSchedulerProperties.get("dayofmonthsnapshots").setValue("*");
+			this.zSchedulerProperties.get("monthsnapshots").setValue("*");
+			this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+
+		}else{
+			this.zSchedulerProperties.get("hour").setValue(this.zSchedulerProperties.get("time").getValue().split(":")[0]);
+			this.zSchedulerProperties.get("minutes").setValue(this.zSchedulerProperties.get("time").getValue().split(":")[1]);
+			if (frequency.contains("Days")){
+				this.zSchedulerProperties.get("dayofmonthsnapshots").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Days", ""));
+				this.zSchedulerProperties.get("monthsnapshots").setValue("*");
+				this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+
+			}else{
+				if (frequency.contains("Months")){
+					this.zSchedulerProperties.get("dayofmonthsnapshots").setValue(this.zSchedulerProperties.get("dayofmonthsnapshots").getValue());
+					this.zSchedulerProperties.get("monthsnapshots").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Months", ""));
+					this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+
+				}else{
+					if (frequency.contains("Hour")){
+						this.zSchedulerProperties.get("minutes").setValue("*");
+						this.zSchedulerProperties.get("hours").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Hour", ""));
+						this.zSchedulerProperties.get("dayofmonthsnapshots").setValue("*");
+						this.zSchedulerProperties.get("monthsnapshots").setValue("*");
+						this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+					}else{
+						if (frequency.contains("Day")){
+							this.zSchedulerProperties.get("dayofmonthsnapshots").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Day", ""));
+							this.zSchedulerProperties.get("monthsnapshots").setValue("*");
+							this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+						}else{
+							if (frequency.contains("Month")){
+								this.zSchedulerProperties.get("dayofmonthsnapshots").setValue(this.zSchedulerProperties.get("dayofmonthsnapshots").getValue());
+								this.zSchedulerProperties.get("monthsnapshots").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Month", ""));
+								this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+							}
+						}
+					}
+				}
+			}
+		}
+	}
+
+	public static int getIntDayOfWeek(String dayOfWeek)  
+	{  
+		try   
+		{   
+			DateFormat formatter ;   
+			Date date ;   
+			formatter = new SimpleDateFormat("EEE");  
+			date = (Date)formatter.parse(dayOfWeek);    
+			GregorianCalendar g = new GregorianCalendar();  
+			g.setTime(date);  
+			return g.get(Calendar.DAY_OF_WEEK);  
+		}   
+		catch (ParseException e)  
+		{  
+			System.out.println("Exception :"+e);    
+		}    
+		return 0;  
+	}
+}
+

Property changes on: src/gZFS/zsnapshots.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/guiTrt.java
===================================================================
--- src/gZFS/guiTrt.java	(revision 0)
+++ src/gZFS/guiTrt.java	(revision 14)
@@ -0,0 +1,233 @@
+package gZFS;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Hashtable;
+
+import org.jfree.chart.ChartFactory;
+import org.jfree.chart.JFreeChart;
+import org.jfree.chart.plot.PiePlot3D;
+import org.jfree.data.general.DefaultPieDataset;
+import org.jfree.data.general.PieDataset;
+import org.jfree.util.Log;
+import org.jfree.util.Rotation;
+
+public class guiTrt {
+
+
+
+	private float zfsSize = 0;
+	private float zfsUsedByData = 0;
+	private float zfsUsedBySnapshots = 0;
+	private float zfsFree=0;
+	private float zfsFreePourcent=0;
+	private String Unit = "";
+
+	public void formatChartValue(String totalSize, String usedByData, String usedBySnapshots){
+
+		setUnit("");
+		setZfsSize(0);
+		setZfsUsedByData(0);
+		setZfsUsedBySnapshots(0);
+		setZfsFree(0);
+		setZfsFreePourcent(0);
+
+
+		if ( !totalSize.equalsIgnoreCase("") && ! totalSize.equalsIgnoreCase(null) && !usedByData.equalsIgnoreCase("") && !usedByData.equalsIgnoreCase(null) && !usedBySnapshots.equalsIgnoreCase("") && !usedBySnapshots.equalsIgnoreCase(null)){
+
+			if ( totalSize.contains("T")){
+				setUnit("T");
+				setZfsSize(Float.valueOf(totalSize.substring(0, (totalSize.length()-1))));
+				setZfsFree(getZfsSize());
+
+				//Set Pourcent Data Size with the good Unit
+				if (usedByData.contains("T")){
+					setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1))));
+					setZfsUsedByData((Float.valueOf(usedByData.substring(0, (usedByData.length()-1))) *100)/getZfsSize());
+				}else{
+					if (usedByData.contains("G")){
+						setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024);
+						setZfsUsedByData(( (Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024) *100)/getZfsSize());
+					}else{
+						if (usedByData.contains("M")){
+							setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1048576);
+							setZfsUsedByData(( (Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1048576) *100)/getZfsSize());
+						}
+					}
+				}
+
+				//Set Pourcent Snapshot Size with the good Unit
+				if (usedBySnapshots.contains("T")){
+					setZfsUsedBySnapshots((Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1))) *100)/getZfsSize());
+				}else{
+					if (usedBySnapshots.contains("G")){
+						setZfsUsedBySnapshots(( (Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1024) *100)/getZfsSize());
+					}else{
+						if (usedBySnapshots.contains("M")){
+							setZfsUsedBySnapshots(( (Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1048576) *100)/getZfsSize());
+						}
+					}
+				}
+
+			}
+
+			if ( totalSize.contains("G")){
+				setUnit("G");
+				setZfsSize(Float.valueOf(totalSize.substring(0, (totalSize.length()-1))));
+				setZfsFree(getZfsSize());
+				//Set Pourcent Data Size with the good Unit
+				if (usedByData.contains("G")){
+					setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1))));
+					setZfsUsedByData(( Float.valueOf(usedByData.substring(0, (usedByData.length()-1))) *100)/getZfsSize());
+				}else{
+					if (usedByData.contains("M")){
+						setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024);
+						setZfsUsedByData(( (Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024) *100)/getZfsSize());
+					}
+				}
+				//Set Pourcent Snapshot Size with the good Unit
+				if (usedBySnapshots.contains("G")){
+					setZfsFree(getZfsFree() - Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1))));
+					setZfsUsedBySnapshots(( Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1))) *100)/getZfsSize());
+				}else{
+					if (usedBySnapshots.contains("M")){
+						setZfsFree(getZfsFree() - Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1024);
+						setZfsUsedBySnapshots(( (Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1024) *100)/getZfsSize());
+					}
+				}
+
+			}
+			setZfsFreePourcent(100-getZfsUsedByData()-getZfsUsedBySnapshots());
+			System.out.println("zfsUsedByData :"+getZfsUsedByData()+" "+"zfsUsedBySnapshots : "+getZfsUsedBySnapshots()+" zfsFree : "+getZfsFree());
+
+		}
+	}
+	
+	public float formatChartDataInPourcent(String val2convert, String totalSize){
+		if ( !val2convert.equalsIgnoreCase("") && val2convert.equalsIgnoreCase(null)&& totalSize.equalsIgnoreCase("")&&totalSize.equalsIgnoreCase(null)){
+			return (Float.valueOf(val2convert.substring(0, (val2convert.length()-1))) *100)/Float.valueOf(totalSize);	
+		}
+		return 0;
+	}
+
+	public float dataInPourcent(float val2convert, float totalSize){
+		return  (val2convert*100)/(totalSize);
+	}
+	
+	public float calculFree(float usedSize, float totalSize){
+		return totalSize - usedSize;
+	}
+	
+	
+
+	public PieDataset createDataset(Hashtable<String, Float> dataCharset2) {  
+		final DefaultPieDataset result = new DefaultPieDataset();  
+		String[] keystitle = (String[]) dataCharset2.keySet().toArray(new String[0]);
+
+		Arrays.sort(keystitle, Collections.reverseOrder());
+		for(String keytitle : keystitle) {
+
+			result.setValue(keytitle, dataCharset2.get(keytitle));  
+		}
+		return result;  
+	}  
+
+	public org.jfree.chart.JFreeChart createChart(final PieDataset dataset, final String title) {  
+		final JFreeChart chart = ChartFactory.createPieChart3D(title, dataset, true, true, false);  
+
+		final PiePlot3D plot = (PiePlot3D) chart.getPlot(); 
+
+		plot.setStartAngle(290);  
+		plot.setDirection(Rotation.CLOCKWISE);  
+		plot.setLabelGenerator(null);
+		//plot.setForegroundAlpha(0.8f);  
+
+		return chart;  
+	}
+
+	/**
+	 * @return the zfsSize
+	 */
+	public float getZfsSize() {
+		return zfsSize;
+	}
+
+	/**
+	 * @param zfsSize the zfsSize to set
+	 */
+	public void setZfsSize(float zfsSize) {
+		this.zfsSize = zfsSize;
+	}
+
+	/**
+	 * @return the zfsUsedByData
+	 */
+	public float getZfsUsedByData() {
+		return zfsUsedByData;
+	}
+
+	/**
+	 * @param zfsUsedByData the zfsUsedByData to set
+	 */
+	public void setZfsUsedByData(float zfsUsedByData) {
+		this.zfsUsedByData = zfsUsedByData;
+	}
+
+	/**
+	 * @return the zfsUsedBySnapshots
+	 */
+	public float getZfsUsedBySnapshots() {
+		return zfsUsedBySnapshots;
+	}
+
+	/**
+	 * @param zfsUsedBySnapshots the zfsUsedBySnapshots to set
+	 */
+	public void setZfsUsedBySnapshots(float zfsUsedBySnapshots) {
+		this.zfsUsedBySnapshots = zfsUsedBySnapshots;
+	}
+
+	/**
+	 * @return the zfsFree
+	 */
+	public float getZfsFree() {
+		return zfsFree;
+	}
+
+	/**
+	 * @param zfsFree the zfsFree to set
+	 */
+	public void setZfsFree(float zfsFree) {
+		this.zfsFree = zfsFree;
+	}
+
+	/**
+	 * @return the zfsFreePourcent
+	 */
+	public float getZfsFreePourcent() {
+		return zfsFreePourcent;
+	}
+
+	/**
+	 * @param zfsFreePourcent the zfsFreePourcent to set
+	 */
+	public void setZfsFreePourcent(float zfsFreePourcent) {
+		this.zfsFreePourcent = zfsFreePourcent;
+	}
+
+	/**
+	 * @return the unit
+	 */
+	public String getUnit() {
+		return Unit;
+	}
+
+	/**
+	 * @param unit the unit to set
+	 */
+	public void setUnit(String unit) {
+		Unit = unit;
+	}  
+
+
+}

Property changes on: src/gZFS/guiTrt.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/config.properties
===================================================================
--- src/gZFS/config.properties	(revision 0)
+++ src/gZFS/config.properties	(revision 14)
@@ -0,0 +1,26 @@
+biniscsigetconf=/sbin/get-conf-iscsi-volume
+bingetprovisionedspace=/sbin/get-provisioned-space
+bingetconfsnapshot=/sbin/get-conf-snapshot
+bingetdiskinfo=/sbin/get-disk-info
+binzfssnapshots=/sbin/zfs-snapshot
+binzfsclone=/sbin/zfs-clone
+binzfsenablesnapshots=/sbin/enable-snapshot
+binzfsdisablesnapshots=/sbin/disable-snapshot
+binzfsenablereplicas=/sbin/enable-replica
+binzfsdisablereplicas=/sbin/disable-replica
+binzfsreplica=/sbin/zfs-replica
+bingetconfreplica=/sbin/get-conf-replica
+binzfsaddiscsi=/sbin/add-iscsi-volume
+binzfsdeliscsi=/sbin/del-iscsi-volume
+binzfscreatevolume=/sbin/create-volume
+binzfsdelvolume=/sbin/del-volume
+binzfscreatefilesystem=/sbin/create-filesystem
+binzfsdelfilesystem=/sbin/del-filesystem
+binzfs=/sbin/zfs
+binzpool=/sbin/zpool
+binzpoolgetstate=/sbin/zpool-get-state
+pathzfsconfsnapshots=/opt/gZFS/snapshots/
+pathzfsconftools=/opt/gZFS/bin/
+pathzfsconf=/opt/gZFS/
+pathzfsvoldevice=/dev/zvol/
+serverConfDir=/gzfsConf/
\ No newline at end of file

Property changes on: src/gZFS/config.properties
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/libConnect.java
===================================================================
--- src/gZFS/libConnect.java	(revision 0)
+++ src/gZFS/libConnect.java	(revision 14)
@@ -0,0 +1,144 @@
+package gZFS;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.OutputStream;
+import java.io.PipedInputStream;
+import java.io.PipedOutputStream;
+import java.io.PrintStream;
+import java.util.ArrayList;
+import java.util.Properties;
+
+import com.jcraft.jsch.Channel;
+import com.jcraft.jsch.ChannelExec;
+import com.jcraft.jsch.JSch;
+import com.jcraft.jsch.JSchException;
+import com.jcraft.jsch.Session;
+
+public class libConnect {
+
+	private String userLogin;
+	private String userPassword;
+	private String sshHost;
+	private int sshPort;
+	private Session session;
+	private JSch jsch = new JSch();
+
+	public String connect(String cmd) {
+		String outCmd = null ;
+		try {
+			
+			setSession(jsch.getSession(getUserLogin(), getSshHost(), getSshPort()));
+			session.setPassword(this.getUserPassword());
+			Properties config = new Properties();
+			config.put("StrictHostKeyChecking", "no");
+			session.setConfig(config);
+			session.connect();
+			if ( session.isConnected()){
+				System.out.println("Connected");
+			}else{
+				System.out.println("not Connected");
+			}
+			ChannelExec channel = (ChannelExec) session.openChannel("exec");
+			//((ChannelExec) channel).setCommand("ls");
+			((ChannelExec) channel).setCommand(cmd);
+			InputStream in = channel.getInputStream();
+			OutputStream out = channel.getOutputStream();
+			((ChannelExec) channel).setErrStream(System.err);
+
+			channel.connect();
+			byte[] tmp = new byte[1024];
+			
+			while (true) {
+				
+				int ind = 0;
+				while (in.available() > 0) {
+					int i = in.read(tmp, 0, 1024);
+					if (i < 0)
+						break;
+					
+					outCmd= new String(tmp, 0, i);
+					//System.out.println(toto);
+					System.out.println(outCmd);
+					//System.out.print(new String(tmp, 0, i));
+					
+				}
+				if (channel.isClosed()) {
+					break;
+				}
+				try {
+					Thread.sleep(1000);
+				} catch (Exception ee) {
+					System.out.println(ee);
+				}
+			}
+			channel.disconnect();
+					
+		} catch (JSchException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			return null;
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			return null;
+		}
+		/*for (int cpt=0;cpt < outCmd.length;cpt++ ) {
+			System.out.println(outCmd[cpt]);
+		}*/
+		System.out.println(outCmd);
+		return outCmd;
+	}
+
+ 
+  
+  public String zfsGetAllVolume(String volume){
+	 return connect("zfs list");
+	
+//	  return this.executeCmd("/sbin/zfs get all "+volume);
+  }
+	public String getSshHost() {
+		return sshHost;
+	}
+
+	public void setSshHost(String sshHost) {
+		this.sshHost = sshHost;
+	}
+
+	public String getUserLogin() {
+		return userLogin;
+	}
+
+	public void setUserLogin(String userLogin) {
+		this.userLogin = userLogin;
+	}
+
+
+	public int getSshPort() {
+		return sshPort;
+	}
+
+
+	public void setSshPort(int sshPort) {
+		this.sshPort = sshPort;
+	}
+
+	public Session getSession() {
+		return session;
+	}
+
+	public void setSession(Session session) {
+		this.session = session;
+	}
+
+	public String getUserPassword() {
+		return userPassword;
+	}
+
+	public void setUserPassword(String userPassword) {
+		this.userPassword = userPassword;
+	}
+
+}

Property changes on: src/gZFS/libConnect.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/gui.java
===================================================================
--- src/gZFS/gui.java	(revision 0)
+++ src/gZFS/gui.java	(revision 14)
@@ -0,0 +1,3245 @@
+package gZFS;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Date;
+import java.util.Hashtable;
+import java.util.List;
+
+import org.apache.log4j.Level;
+import org.apache.log4j.Logger;
+import org.eclipse.jface.layout.TreeColumnLayout;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.ScrolledComposite;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.ExpandBar;
+import org.eclipse.swt.widgets.ExpandItem;
+import org.eclipse.swt.widgets.Group;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.MenuItem;
+import org.eclipse.swt.widgets.MessageBox;
+import org.eclipse.swt.widgets.ProgressBar;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.TabFolder;
+import org.eclipse.swt.widgets.TabItem;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.TableColumn;
+import org.eclipse.swt.widgets.TableItem;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeItem;
+import org.eclipse.wb.swt.SWTResourceManager;
+import org.jfree.chart.JFreeChart;
+import org.jfree.data.general.PieDataset;
+import org.jfree. experimental.chart.swt.ChartComposite;
+
+import com.ibm.icu.math.BigDecimal;
+
+public class gui {
+
+	private Logger log = Logger.getLogger(getClass().getPackage().getName()+" "+getClass().getCanonicalName());
+	private Composite compositeConfig;
+	private Composite compositeZpoolConfig;
+	private Composite compositeTabVolConfig;
+	private Composite compositeCreateVolFS;
+	private Composite compositeIscsi;
+	private Composite compositeSnapshot;
+	private Composite compositeReplica;
+	private Composite compositeWidgetCreateVolFS;
+	private Composite compositeWidgetDisks;
+	private Composite compositeDisks;
+
+
+	private Group groupCreateVolFS;
+	private Group groupActiveIscsi;
+	private Group groupDisks;
+	private ScrolledComposite scrolledCreateVol;
+	private ScrolledComposite scrolledDisks;
+	private ChartComposite chartVolumeComposite = null;
+	private ChartComposite chartZpoolProvionedComposite = null;
+	private ChartComposite chartZpoolUsedComposite = null;
+	private GridData gridDataChart;
+
+	protected Shell shell;
+	private zfs zfs = new zfs();
+	private zfs zsnap = new zfs();
+	private guiTrt guiTrt = new guiTrt();
+	private Hashtable<String,Float> dataCharset = new Hashtable<String, Float>();
+
+	private List<Object> zfsList;
+	private String keyProp;
+	private List<Label> labelsField= new ArrayList<Label>();
+	private List<Text> textsField= new ArrayList<Text>();
+	private List<Combo> combosField= new ArrayList<Combo>();
+
+	private List<Label> labelsFieldServer= new ArrayList<Label>();
+	private List<Text> textsFieldServer= new ArrayList<Text>();
+	private List<Combo> combosFieldServer= new ArrayList<Combo>();
+
+	private List<Label> labelsFieldPool= new ArrayList<Label>();
+	private List<Text> textsFieldPool = new ArrayList<Text>();
+	private List<Combo> combosFieldPool = new ArrayList<Combo>();
+
+	private Combo comboType4CreateVolFS ;
+	private Combo comboZpool4CreateVolFS;
+
+	private List<Label> labelsFieldCreateVol= new ArrayList<Label>();
+	private List<Text> textsFieldCreateVol = new ArrayList<Text>();
+	private List<Combo> combosFieldCreateVol = new ArrayList<Combo>();
+
+	private List<Label> labelsFieldCreateIscsi= new ArrayList<Label>();
+	private List<Text> textsFieldCreateIscsi = new ArrayList<Text>();
+	private List<Combo> combosFieldCreateIscsi = new ArrayList<Combo>();
+
+	private List<Label> labelsFieldAddIscsi= new ArrayList<Label>();
+	private List<Text> textsFieldAddIscsi = new ArrayList<Text>();
+	private List<Combo> combosFieldAddIscsi = new ArrayList<Combo>();
+	private List<TableColumn> tablecolumnsFieldAddIscsi = new ArrayList<TableColumn>();
+	private Table tableIscsiSession;
+
+
+	private List<Label> labelsFieldSnapshots= new ArrayList<Label>();
+	private List<Text> textsFieldSnapshots = new ArrayList<Text>();
+	private List<Label> labelsFieldSnapshotsValue= new ArrayList<Label>();
+	private List< org.eclipse.swt.widgets.List > listsFieldSnaphots = new ArrayList<org.eclipse.swt.widgets.List >();
+
+
+	private List<Label> labelsFieldReplica= new ArrayList<Label>();
+	private List<Text> textsFieldReplica = new ArrayList<Text>();
+	private List<Label> labelsFieldReplicaValue= new ArrayList<Label>();
+	private List< org.eclipse.swt.widgets.List > listsFieldReplica = new ArrayList<org.eclipse.swt.widgets.List >();
+	private List<Combo> combosFieldReplica = new ArrayList<Combo>();
+
+	private List<Label> labelsFieldZRaid= new ArrayList<Label>();
+	private List<Label> labelsFieldDisks= new ArrayList<Label>();
+
+	private Image imageStorage= SWTResourceManager.getImage(gui.class, "/images/storage-32px.png");
+	private Image imageServerOnline = SWTResourceManager.getImage(gui.class, "/images/enable-server-icon-32px.png");
+	private Image imageServerOffline = SWTResourceManager.getImage(gui.class, "/images/off-server-32px.png");
+	private Image imageStorageOnline = SWTResourceManager.getImage(gui.class, "/images/storage-32px.png");
+	private Image imageStorageOffline = SWTResourceManager.getImage(gui.class, "/images/storage-offline-32px.png");
+	private Image imageFSOnline = SWTResourceManager.getImage(gui.class, "/images/zfs-fs-online-32px.png");
+	private Image imageFSOffline = SWTResourceManager.getImage(gui.class, "/images/zfs-fs-offline-32px.png");
+	private Image imageStorageServer = SWTResourceManager.getImage(gui.class, "/images/storage-server-32px.png");
+	private Image imageSnapshotOnline = SWTResourceManager.getImage(gui.class, "/images/snapshot-32px.png");
+	private Image imageSnapshotOffline = SWTResourceManager.getImage(gui.class, "/images/snapshot-offline-32px.png");
+	private Image imageHardDisk = SWTResourceManager.getImage(gui.class, "/images/hard-disk-72px.png");
+	private Image imageHardDiskOffline = SWTResourceManager.getImage(gui.class, "/images/hard-disk-offline-72px.png");
+	private Image imageHardDiskOnline = SWTResourceManager.getImage(gui.class, "/images/hard-disk-online-72px.png");
+
+	private Color labelTitleBackgroundColor = Display.getCurrent().getSystemColor(SWT.COLOR_TITLE_BACKGROUND_GRADIENT);
+	private Color labelFieldBackgroundColor = Display.getCurrent().getSystemColor(SWT.COLOR_WHITE);
+	private Color textFieldBackgroundColor = Display.getCurrent().getSystemColor(SWT.COLOR_WHITE);
+	private Color groupBackgroundColor = Display.getCurrent().getSystemColor(SWT.COLOR_WHITE);
+	private Color compositeBackgroundColor = Display.getCurrent().getSystemColor(SWT.COLOR_WHITE);
+	private Color tabFolderBackgroundColor = Display.getCurrent().getSystemColor(SWT.COLOR_TITLE_BACKGROUND_GRADIENT);
+	private Color tabFolderForegroundColor = Display.getCurrent().getSystemColor(SWT.COLOR_BLACK);
+
+	private Tree tree;
+	private Tree treeZpool;
+	private Tree treeSnapshots;
+	private TabFolder tabFolderNav;
+	private TabFolder tabFolderConfig;
+	private TabItem tbtmConfig;
+	private TabItem tbtmZpoolConfig;
+	private TabItem tbtmSettings;
+	private TabItem tbtmCreateVolFS;
+	private TabItem tbtmIscsi;
+	private TabItem tbtmSnapshot;
+	private TabItem tbtmReplica;
+	private TabItem tbtmDisks;
+
+	private Font fontTitle ;
+	private Font fontSubTitle ;
+	private Font fontWidget;
+	private List<Object> zpoolList;
+	private Button btnConnectServer;
+	private Button btnCreateZfsVolFS;
+	private Thread thrConnect;
+	private Thread thrCheck;
+	private Thread thrCreateZFSVol;
+	private Thread thrZpool;
+	private Thread thrGetallZvol;
+	private Thread thrZfsList;
+	private guiProgress wPB;
+
+
+	private String strItemServer ="";
+	private String strItemZvolFS ="";
+	private int countItem=0;
+	private String infoUsedSize="";
+
+
+	Menu treeZFSMenu;
+
+	/**
+	 * Launch the application.
+	 * @param args
+	 */
+	public static void main(String[] args) {
+		try {
+			gui window = new gui();
+			window.open();
+
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
+	}
+
+	/**
+	 * Open the window.
+	 */
+	public void open() {
+		log.setLevel((Level) Level.DEBUG);
+		Display display = Display.getDefault();
+
+		createContents(shell);
+
+		shell.open();
+		shell.layout();
+		wPB = new guiProgress(shell.getDisplay(), shell.getLocation().x, shell.getLocation().y);
+		shell.addListener(SWT.Close, new Listener() {
+			public void handleEvent(final Event event) {
+				zfs.disconnectServer();
+			}
+		});
+		while (!shell.isDisposed()) {
+			if (!display.readAndDispatch()) {
+
+				display.sleep();	
+			}
+		}
+	}
+
+	/**
+	 * Create contents of the window.
+	 */
+	protected void createContents(Composite parent) {
+		shell = new Shell();
+		shell.setSize(SWT.MAX, SWT.MAX);
+		shell.setText("gZFS : a GUI for ZFS");
+		//shell.layout();
+		shell.setLayout(new FillLayout(SWT.HORIZONTAL));
+
+		fontTitle = new Font(shell.getDisplay(), "Calibri", 14, SWT.BOLD);
+		fontSubTitle = new Font(shell.getDisplay(), "Calibri", 10, SWT.BOLD);
+		fontWidget = new Font(shell.getDisplay(), "Calibri", 10, SWT.NONE);
+		tabFolderNav = new TabFolder(shell, SWT.UP);
+		tabFolderNav.setBounds(0, 0, 200, 200);
+		tabFolderNav.setBackground(tabFolderBackgroundColor);
+		tabFolderNav.setForeground(tabFolderForegroundColor);
+
+		/******************************************************************************
+		 * CREATE TAB : GENERAL
+		 ******************************************************************************/
+
+		TabItem tbtmGen = new TabItem(tabFolderNav, SWT.NONE);
+		//tbtmGen.setImage(SWTResourceManager.getImage(gui.class, "/images/accept-database-icon.png"));
+		tbtmGen.setText("General");
+
+
+		Composite compositeTabNavGen = new Composite(tabFolderNav, SWT.NONE);
+		tbtmGen.setControl(compositeTabNavGen);
+		GridLayout gridLayout = new GridLayout();
+		compositeTabNavGen.setLayout(gridLayout);
+		compositeTabNavGen.setBackground(tabFolderBackgroundColor);
+
+		treeZpool = new Tree(compositeTabNavGen, SWT.BORDER|SWT.V_SCROLL);
+		GridData gd_treeZpool = new GridData(GridData.FILL,GridData.FILL, true, true);
+		gd_treeZpool.heightHint = 50;
+		treeZpool.setLayoutData(gd_treeZpool);
+		treeZpool.addListener(SWT.Selection, new Listener() {
+			public void handleEvent(final Event event) {
+				//log.debug(treeZpool.getSelection()[0].getText());
+				TreeItem root = (TreeItem) event.item;
+
+				if ( root.getParentItem() != null){
+					zfs.getServer(root.getParentItem().getData().toString());
+					zfs.zpoolGetAll(root.getData().toString());
+					refreshInfoZpool();
+					refreshDisks();
+
+				}else{
+					zfs.getServer(root.getData().toString());
+					refreshInfoServer();
+
+				}
+			}
+		}
+				);
+		//Init Server List in Tree
+		refreshTreeZpoolList();
+
+		Group groupServerConfig= new Group(compositeTabNavGen,SWT.NONE);
+		groupServerConfig.setBackground(groupBackgroundColor);
+		groupServerConfig.setLayout(new GridLayout());
+		GridData gridDataServerConfig=new GridData(GridData.FILL_HORIZONTAL);
+		gridDataServerConfig.heightHint=500;
+		gridDataServerConfig.minimumHeight=500;
+		groupServerConfig.setLayoutData(gridDataServerConfig);
+
+		ScrolledComposite scrolledServerConfig=new ScrolledComposite(groupServerConfig,SWT.V_SCROLL);
+		scrolledServerConfig.setLayoutData(new GridData(GridData.FILL_BOTH));
+		Composite compositeWidget=new Composite(scrolledServerConfig,SWT.NONE);
+		compositeWidget.setBackground(compositeBackgroundColor);
+		GridLayout gridLayoutWidget = new GridLayout();
+		gridLayoutWidget.numColumns =2;
+		compositeWidget.setLayout(gridLayoutWidget);
+
+
+		GridData gridDataTitleServerConfig = new GridData(GridData.FILL, GridData.CENTER, true, false);
+		gridDataTitleServerConfig.horizontalSpan = 2;
+		Label lblTitleServerConfig = new Label(compositeWidget, SWT.CENTER|SWT.BORDER);
+		lblTitleServerConfig.setLayoutData(gridDataTitleServerConfig);
+		lblTitleServerConfig.setFont(fontTitle);
+		lblTitleServerConfig.setBackground(labelTitleBackgroundColor);
+		lblTitleServerConfig.setText("Server Configuration");
+
+
+		String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		labelsFieldServer.clear();
+		textsFieldServer.clear();	
+		combosFieldServer.clear();
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+
+
+
+			if ( "freeentry".equalsIgnoreCase(zfs.getZserver().zProperties.get(keyProp).getType())){
+				Label lbl = new Label(compositeWidget, SWT.NONE);
+				lbl.setFont(fontWidget);
+				lbl.setBackground(labelFieldBackgroundColor);
+				lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				lbl.setText(zfs.getZserver().zProperties.get(keyProp).getLabelProperty());
+				if (keyProp.equals("userPasswd")){
+					textsFieldServer.add(new Text(compositeWidget,  SWT.PASSWORD | SWT.BORDER));
+				}else{
+					textsFieldServer.add(new Text(compositeWidget, SWT.WRAP|SWT.BORDER));	
+
+				}
+
+				textsFieldServer.get(textsFieldServer.size()-1).setBackground(textFieldBackgroundColor);
+				textsFieldServer.get(textsFieldServer.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				//textsField.get(textsField.size()-1).setText(zfs.getZserver().zProperties.get(keyProp).getNameProperty());
+				textsFieldServer.get(textsFieldServer.size()-1).setData(zfs.getZserver().zProperties.get(keyProp).getNameProperty());
+
+			}else{
+
+				if ( "nofreeentry".equalsIgnoreCase(zfs.getZserver().zProperties.get(keyProp).getType())){
+					Label lbl = new Label(compositeWidget, SWT.NONE);
+					lbl.setFont(fontWidget);
+					lbl.setBackground(labelFieldBackgroundColor);
+					lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					lbl.setText(zfs.getZserver().zProperties.get(keyProp).getLabelProperty());
+
+					combosFieldServer.add(new Combo(compositeWidget, SWT.NONE));
+					combosFieldServer.get(combosFieldServer.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					combosFieldServer.get(combosFieldServer.size()-1).setData(zfs.getZserver().zProperties.get(keyProp).getNameProperty());
+					//combosField.get(combosField.size()-1).setText(zfs.getZserver().zProperties.get(keyProp).getValue());
+					String[] keysPermitValue = (String[]) zfs.getZserver().zProperties.get(keyProp).getPermitValue().keySet().toArray(new String[0]);
+					for (int cpt=0;cpt <zfs.getZserver().zProperties.get(keyProp).getPermitValue().size();cpt++){
+						String keyPermiValue = keysPermitValue[cpt];
+						combosFieldServer.get(combosFieldServer.size()-1).add(zfs.getZserver().zProperties.get(keyProp).getPermitValue().get(keyPermiValue).toString());
+					}
+				}
+			}
+
+		}
+
+		Button btnAddServer = new Button(compositeWidget, SWT.NONE);
+		btnAddServer.setText("Add ZFS Server");
+		btnAddServer.addListener(SWT.Selection, new Listener() {
+			public void handleEvent(final Event event) {
+
+				String[] keysProp = zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+				//String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+				Arrays.sort(keysProp);
+
+				for (int i = 0; i < keysProp.length; i++) {
+					keyProp = keysProp[i];
+					for (int cpt=0;cpt<textsFieldServer.size();cpt++){
+						if (keyProp.equalsIgnoreCase(textsFieldServer.get(cpt).getData().toString())) {
+							log.debug(keyProp+" "+textsFieldServer.get(cpt).getText());
+							if (keyProp.equals("userPasswd")){
+								zfs.getZserver().zProperties.get(keyProp).setValue("");
+							}else{
+								zfs.getZserver().zProperties.get(keyProp).setValue(textsFieldServer.get(cpt).getText());	
+							}
+
+						}
+					}
+				}
+				zfs.addServer();
+
+				boolean checkExistInTree=false;
+				for (int ind=0;ind<treeZpool.getItemCount();ind++){
+					log.debug("refreshTreeZpoolList "+treeZpool.getItem(ind).getData().toString()+" "+zfs.getZserver().zProperties.get("serverIP").getValue());
+					if ( treeZpool.getItem(ind).getData().toString().equalsIgnoreCase(zfs.getZserver().zProperties.get("serverIP").getValue())){
+						checkExistInTree=true;
+					}
+				}
+				if ( ! checkExistInTree ){
+					TreeItem rootTreeZvolFS = new TreeItem(treeZpool,SWT.None);
+					rootTreeZvolFS.setText(zfs.getZserver().zProperties.get("serverIP").getValue());
+					rootTreeZvolFS.setData(zfs.getZserver().zProperties.get("serverIP").getValue());
+					rootTreeZvolFS.setImage(imageServerOffline);
+				}
+			}	
+		});
+
+		Button btnRemoveServer = new Button(compositeWidget, SWT.NONE);
+		btnRemoveServer.setText("Remove ZFS Server");
+		btnRemoveServer.addListener(SWT.Selection, new Listener() {
+			public void handleEvent(final Event event) {
+				if ( treeZpool.getParentItem() == null){
+					if ( treeZpool.getSelectionCount() !=0){
+
+						zfs.getZserver().zProperties.get("serverIP").setValue(treeZpool.getSelection()[0].getData().toString());
+						for (int cptTree=0;cptTree<tree.getItemCount();cptTree++){
+							if (tree.getItem(cptTree).getData().equals(zfs.getZserver().zProperties.get("serverIP").getValue())){
+								tree.getItem(cptTree).removeAll();
+								tree.getItem(cptTree).dispose();
+							}
+						}
+						zfs.removeServer();		
+						treeZpool.getSelection()[0].dispose();
+
+					}
+				}
+
+			}
+		});
+
+		btnConnectServer = new Button(compositeWidget,SWT.NONE);
+		GridData gridDataBtnServerConfig = new GridData(GridData.FILL, GridData.CENTER, true, false);
+		gridDataBtnServerConfig.horizontalSpan = 2;
+		btnConnectServer.setLayoutData(gridDataBtnServerConfig);
+		btnConnectServer.setText("Connect");
+		btnConnectServer.addListener(SWT.Selection, new Listener() {
+			public void handleEvent(final Event event) {
+
+
+
+				if (treeZpool.getSelectionCount() !=0 ){
+					final TreeItem root = (TreeItem) treeZpool.getSelection()[0];
+					if ( root.getParentItem() ==null ){
+
+						String[] keysProp = zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+						//String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+						Arrays.sort(keysProp);
+
+						for (int i = 0; i < keysProp.length; i++) {
+							keyProp = keysProp[i];
+							for (int cpt=0;cpt<textsFieldServer.size();cpt++){
+								if (keyProp.equalsIgnoreCase(textsFieldServer.get(cpt).getData().toString())) {
+									zfs.getZserver().zProperties.get(keyProp).setValue(textsFieldServer.get(cpt).getText());
+								}
+							}
+						}
+						if ( !zfs.getCacheSession().containsKey(zfs.getZserver().zProperties.get("serverIP").getValue()) && zfs.connectServer(zfs.getZserver().zProperties.get("serverIP").getValue(), 22, zfs.getZserver().zProperties.get("userLogin").getValue(), zfs.getZserver().zProperties.get("userPasswd").getValue())){
+
+							thrCheck = new Thread(new Runnable(){
+								public void run() {
+									Display.getDefault().syncExec(new Runnable() {
+										public void run() {
+											if (wPB.s.isDisposed()){
+												wPB = new guiProgress(shell.getDisplay(), shell.getLocation().x, shell.getLocation().y);
+												wPB.open();
+											}else{
+												wPB.open();
+											}
+											btnConnectServer.setEnabled(false);
+											tabFolderNav.setEnabled(false);
+											refreshDisks();
+										}
+									});
+									zfs.checkBinEnv();
+									Display.getDefault().syncExec(new Runnable(){
+										public void run(){
+											log.debug(zfs.getError());
+
+											log.debug(zfs.getZserver().zProperties.get("serverIP").getValue()+" connected");
+											if ( zfs.getError().size() ==0){
+												zsnap = zfs;
+
+												refreshTreeZpoolList();
+
+
+											}else{
+												String[] keysPropError = zfs.getError().keySet().toArray(new String[0]);
+												//String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+												Arrays.sort(keysPropError);
+												String textBox = "";
+												for (int i = 0; i < keysPropError.length; i++) {
+													String keyPropError = keysPropError[i];
+													textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+												}
+
+												MessageBox messageBoxInfo = new MessageBox(shell, SWT.DIALOG_TRIM);
+												messageBoxInfo.setText("Warning");
+												messageBoxInfo.setMessage(textBox);
+												messageBoxInfo.open();
+												btnConnectServer.setEnabled(true);
+												tabFolderNav.setEnabled(true);
+												wPB.close();
+
+											}
+
+										}
+									});
+
+								}
+							});
+							thrCheck.start();
+							wPB.close();
+
+
+						}	
+					}
+
+				}
+
+			}
+		});
+
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+			if ( "noupdateable".equalsIgnoreCase(zfs.getZserver().zProperties.get(keyProp).getType())) {
+				Label lbl = new Label(compositeWidget, SWT.NONE);
+				lbl.setFont(fontWidget);
+				lbl.setBackground(labelFieldBackgroundColor);
+				lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				lbl.setText(zfs.getZserver().zProperties.get(keyProp).getLabelProperty());
+
+				labelsFieldServer.add(new Label(compositeWidget, SWT.NONE));
+				labelsFieldServer.get(labelsFieldServer.size()-1).setBackground(labelFieldBackgroundColor);
+				labelsFieldServer.get(labelsFieldServer.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				//labelsField.get(labelsField.size()-1).setText(zfs.getZserver().zProperties.get(keyProp).getNameProperty());
+				labelsFieldServer.get(labelsFieldServer.size()-1).setData(zfs.getZserver().zProperties.get(keyProp).getNameProperty());
+			}
+		}
+
+		scrolledServerConfig.setContent(compositeWidget);
+		scrolledServerConfig.setExpandVertical(true);
+		scrolledServerConfig.setExpandHorizontal(true);
+		scrolledServerConfig.setMinSize(compositeWidget.computeSize(SWT.DEFAULT,SWT.DEFAULT));
+
+		TabItem tabItem = new TabItem(tabFolderNav, SWT.NONE);
+		tabItem.setText("Volumes and File System");
+		tabItem.setData("volandfs");
+
+		compositeTabVolConfig = new Composite(tabFolderNav, SWT.NONE);
+		tabItem.setControl(compositeTabVolConfig);
+		compositeTabVolConfig.setLayout(new GridLayout());
+		compositeTabVolConfig.setBackground(tabFolderBackgroundColor);
+		tree = new Tree(compositeTabVolConfig, SWT.BORDER);
+		//t.minimumHeight=100;
+		GridData gd_tree = new GridData(GridData.FILL,GridData.FILL, true, true);
+		gd_tree.heightHint = 500;
+		tree.setLayoutData(gd_tree);
+
+
+		tree.addListener(SWT.Selection, new Listener() {
+			public void handleEvent(final Event event) {
+
+				final TreeItem root = (TreeItem) event.item;
+				if ( root.getParentItem() != null){
+					wPB = new guiProgress(shell.getDisplay(), shell.getLocation().x, shell.getLocation().y);
+					actionClickTree(event);
+				}
+			}
+		});		
+
+
+		tabFolderConfig = new TabFolder(shell, SWT.UP);
+		tabFolderConfig.setBounds(200, 0, 200, 200);
+		tabFolderConfig.setBackground(tabFolderBackgroundColor);
+		tabFolderConfig.setForeground(tabFolderForegroundColor);
+		createTabItemZpoolConfig();
+		createTabItemCreateVol();
+		createTabItemDisks();
+		tabFolderNav.addListener(SWT.Selection, new Listener() {
+			public void handleEvent(final Event event) {
+				if (tabFolderNav.getSelection()[0].getText().equalsIgnoreCase("general")){
+					thrZpool = new Thread(new Runnable(){
+						public void run() {
+							Display.getDefault().syncExec(new Runnable() {
+								public void run() {
+									if (wPB.s.isDisposed()){
+										wPB = new guiProgress(shell.getDisplay(), shell.getLocation().x, shell.getLocation().y);
+										wPB.open();
+									}else{
+										wPB.open();
+									}
+
+								}
+							});
+
+							Display.getDefault().syncExec(new Runnable() {
+								public void run() {
+									if (!"".equals(zfs.getZpool().zProperties.get("name").getValue())){
+										if (treeZpool.getSelection()[0].getParentItem() != null){
+											if (treeZpool.getSelectionCount()>0){
+												TreeItem zpoolSelect = treeZpool.getSelection()[0];
+												treeZpool.select(zpoolSelect);
+												zfs.getZserver().zProperties.get("serverIP").setValue(treeZpool.getSelection()[0].getParentItem().getData().toString());
+												zfs.zpoolGetAll(zfs.getZpool().zProperties.get("name").getValue());	
+											}	
+										}
+
+									}
+									if ( !tbtmConfig.isDisposed()){
+										tbtmConfig.dispose();
+										tabFolderConfig.layout();
+									}
+
+
+									if ( !tbtmIscsi.isDisposed()){
+										tbtmIscsi.dispose();
+										tabFolderConfig.layout();
+									}
+
+									if ( !tbtmSnapshot.isDisposed()){
+										tbtmSnapshot.dispose();
+										tabFolderConfig.layout();
+									}
+									if ( !tbtmReplica.isDisposed()){
+										tbtmReplica.dispose();
+										tabFolderConfig.layout();
+									}
+									createTabItemZpoolConfig();
+									refreshInfoZpool();
+									compositeZpoolConfig.layout();
+									zfs.setZvol();
+									createTabItemCreateVol();
+									compositeCreateVolFS.layout();
+
+									createTabItemDisks();
+									refreshDisks();
+									compositeDisks.layout();
+
+									wPB.close();
+								}
+							});
+						}
+					});
+					thrZpool.start();	
+				}
+				if (tabFolderNav.getSelection()[0].getText().equalsIgnoreCase("Volumes and File System")){
+					thrZfsList = new Thread(new Runnable(){
+						public void run() {
+							Display.getDefault().syncExec(new Runnable() {
+								public void run() {
+									if ( !tbtmZpoolConfig.isDisposed()){
+										tbtmZpoolConfig.dispose();
+										tabFolderConfig.layout();
+									}
+									if ( !tbtmCreateVolFS.isDisposed()){
+										tbtmCreateVolFS.dispose();
+										tabFolderConfig.layout();
+									}
+									if ( !tbtmDisks.isDisposed()){
+										tbtmDisks.dispose();
+										tabFolderConfig.layout();
+									}
+									//zfs.setZvol();
+									if ( tree.getSelectionCount() >0){
+
+										if (tree.getSelection()[0].getParentItem() != null){
+											TreeItem topRoot = tree.getSelection()[0];
+											while (topRoot.getParentItem() != null){
+												topRoot = topRoot.getParentItem();
+											}
+											TreeItem treeZfsListItem = tree.getSelection()[0];
+											tree.select(treeZfsListItem);
+											zfs.getZserver().zProperties.get("serverIP").setValue(topRoot.getText());
+											zfs.zfsGetAllVolume(tree.getSelection()[0].getData().toString());	
+										}
+									}
+									createTabItemVolConfig();
+									refreshConfigVolume();
+									compositeConfig.layout();
+									createTabItemIscsi();
+									createTabItemSnapshot();
+									createTabItemReplica();
+								}
+
+							});
+						}
+					});
+					thrZfsList.start();
+				}
+			}
+		});
+		tabFolderConfig.addListener(SWT.Selection, new Listener() {
+			public void handleEvent(final Event event) {
+				if (tabFolderConfig.getSelection()[0].getText().equalsIgnoreCase("Snapshots")){
+					//tabFolderConfig.getItems()[0].s
+					treeSnapshots.clearAll(true);
+					treeSnapshots.setItemCount(0);
+					List<Object> zlistSnapshots = zfs.zfsListSnapshotsByVolFS(zfs.getZvol().zProperties.get("name").getValue());
+					for (int i = 0; i < zlistSnapshots.size(); i++) {
+						TreeItem root = new TreeItem(treeSnapshots, 0);
+						root.setText(zlistSnapshots.get(i).toString());
+						root.setData(zlistSnapshots.get(i).toString());
+						new TreeItem(root, 0);
+					}
+
+				}
+			}
+		});
+	}
+
+	private void createTabItemSettings(){
+		/******************************************************************************
+		 * CREATE TAB : Settings
+		 ******************************************************************************/
+
+		tbtmSettings = new TabItem(tabFolderConfig,SWT.NONE,0);
+		tbtmSettings.setText("Server Configuration");
+		Composite compositeSettings = new Composite(tabFolderConfig,SWT.NONE);
+		tbtmSettings.setControl(compositeSettings);
+		GridLayout gridLayout = new GridLayout();
+		compositeSettings.setLayout(gridLayout);
+
+	}
+
+	private void createTabItemZpoolConfig(){
+		/******************************************************************************
+		 * CREATE TAB : SZFS Pool Configuration
+		 ******************************************************************************/
+
+		tbtmZpoolConfig = new TabItem(tabFolderConfig,SWT.NONE,0);
+		tbtmZpoolConfig.setText("Pool Configuration");
+		compositeZpoolConfig = new Composite(tabFolderConfig,SWT.NONE);
+		tbtmZpoolConfig.setControl(compositeZpoolConfig);
+		GridLayout gridLayout = new GridLayout();
+		gridLayout.numColumns=2;
+		compositeZpoolConfig.setLayout(gridLayout);
+		compositeZpoolConfig.setBackground(tabFolderBackgroundColor);
+
+		Group groupZpoolConfig = new Group(compositeZpoolConfig,SWT.NONE);
+		groupZpoolConfig.setBackground(groupBackgroundColor);
+		groupZpoolConfig.setLayout(new GridLayout());
+		//GridData gridDataZpoolConfig=new GridData(GridData.FILL_HORIZONTAL);
+		GridData gridDataZpoolConfig=new GridData(SWT.FILL, SWT.FILL, true, true);
+		//gridDataZpoolConfig.heightHint=550;
+		//gridDataZpoolConfig.minimumHeight=550;
+		gridDataZpoolConfig.horizontalSpan=2;
+		groupZpoolConfig.setLayoutData(gridDataZpoolConfig);
+
+		ScrolledComposite scrolledZpoolConfig=new ScrolledComposite(groupZpoolConfig,SWT.V_SCROLL);
+		scrolledZpoolConfig.setLayoutData(new GridData(GridData.FILL_BOTH));
+		Composite compositeWidget=new Composite(scrolledZpoolConfig,SWT.NONE);
+		compositeWidget.setBackground(compositeBackgroundColor);
+		GridLayout gridLayoutWidget = new GridLayout();
+		gridLayoutWidget.numColumns =2;
+		compositeWidget.setLayout(gridLayoutWidget);
+
+		GridData gridDataTitle = new GridData(GridData.FILL, GridData.CENTER, true, false);
+		gridDataTitle.horizontalSpan = 2;
+		Label lblTitleInfoZpool = new Label(compositeWidget, SWT.CENTER|SWT.BORDER);
+		lblTitleInfoZpool.setLayoutData(gridDataTitle);
+		lblTitleInfoZpool.setFont(fontTitle);
+		lblTitleInfoZpool.setBackground(labelTitleBackgroundColor);
+		lblTitleInfoZpool.setText("ZFS Pool Informations");
+
+
+		String[] keysProp = (String[]) zfs.getZpool().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		labelsFieldPool.clear();
+		textsFieldPool.clear();	
+		combosFieldPool.clear();
+
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+			Label lbl = new Label(compositeWidget, SWT.NONE);
+			lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+			lbl.setText(zfs.getZpool().zProperties.get(keyProp).getLabelProperty());
+			lbl.setFont(fontWidget);
+			lbl.setBackground(labelFieldBackgroundColor);
+			if ( "noupdateable".equalsIgnoreCase(zfs.getZpool().zProperties.get(keyProp).getType())) {
+				labelsFieldPool.add(new Label(compositeWidget, SWT.NONE));
+				labelsFieldPool.get(labelsFieldPool.size()-1).setBackground(labelFieldBackgroundColor);
+				labelsFieldPool.get(labelsFieldPool.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				labelsFieldPool.get(labelsFieldPool.size()-1).setData(zfs.getZpool().zProperties.get(keyProp).getNameProperty());
+			}else{
+				if ( "freeentry".equalsIgnoreCase(zfs.getZpool().zProperties.get(keyProp).getType())){
+					textsFieldPool.add(new Text(compositeWidget, SWT.WRAP|SWT.BORDER));
+					textsFieldPool.get(textsFieldPool.size()-1).setBackground(textFieldBackgroundColor);
+					textsFieldPool.get(textsFieldPool.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					textsFieldPool.get(textsFieldPool.size()-1).setData(zfs.getZpool().zProperties.get(keyProp).getNameProperty());
+
+				}else{
+
+					if ( "nofreeentry".equalsIgnoreCase(zfs.getZpool().zProperties.get(keyProp).getType())){
+						combosFieldPool.add(new Combo(compositeWidget, SWT.NONE));
+						combosFieldPool.get(combosFieldPool.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						combosFieldPool.get(combosFieldPool.size()-1).setData(zfs.getZpool().zProperties.get(keyProp).getNameProperty());
+						String[] keysPermitValue = (String[])zfs.getZpool().zProperties.get(keyProp).getPermitValue().keySet().toArray(new String[0]);
+
+						for (int cpt=0;cpt <zfs.getZpool().zProperties.get(keyProp).getPermitValue().size();cpt++){
+							String keyPermitValue = keysPermitValue[cpt];
+							combosFieldPool.get(combosFieldPool.size()-1).add(zfs.getZpool().zProperties.get(keyProp).getPermitValue().get(keyPermitValue).toString());
+						}
+					}
+				}
+
+			}
+		}
+
+
+		scrolledZpoolConfig.setContent(compositeWidget);
+		scrolledZpoolConfig.setExpandVertical(true);
+		scrolledZpoolConfig.setExpandHorizontal(true);
+		scrolledZpoolConfig.setMinSize(compositeWidget.computeSize(SWT.DEFAULT,SWT.DEFAULT));
+
+
+	}
+
+	private void createTabItemDisks(){
+		/******************************************************************************
+		 * CREATE TAB : DISKS ZFS
+		 ******************************************************************************/
+
+		tbtmDisks = new TabItem(tabFolderConfig,SWT.NONE,2);
+		tbtmDisks.setText("Raid and Disks Configuration");
+		compositeDisks = new Composite(tabFolderConfig,SWT.NONE);
+		tbtmDisks.setControl(compositeDisks);
+		GridLayout gridLayout = new GridLayout();
+		gridLayout.numColumns=6;
+		compositeDisks.setLayout(gridLayout);
+		compositeDisks.setBackground(tabFolderBackgroundColor);
+
+
+
+
+
+
+	}
+
+
+
+	private void createTabItemVolConfig(){
+		/******************************************************************************
+		 * CREATE TAB : Config
+		 ******************************************************************************/
+
+
+		tbtmConfig = new TabItem(tabFolderConfig,SWT.NONE,0);
+		tbtmConfig.setText("Configuration");
+		compositeConfig = new Composite(tabFolderConfig, SWT.NONE);
+		//compositeConfig.set
+		GridData parentData = new GridData(SWT.FILL, SWT.FILL, true, true);
+		compositeConfig.setLayoutData(parentData);
+		tbtmConfig.setControl(compositeConfig);
+		GridLayout gridLayout = new GridLayout();
+		gridLayout.numColumns=2;
+		compositeConfig.setLayout(gridLayout);
+		compositeConfig.setBackground(tabFolderBackgroundColor);
+		Group groupInfoVolFS=new Group(compositeConfig,SWT.NONE);
+		groupInfoVolFS.setBackground(groupBackgroundColor);
+		groupInfoVolFS.setLayout(new GridLayout());
+		GridData gridData=new GridData(GridData.FILL_HORIZONTAL);
+		gridData.heightHint=400;
+		gridData.horizontalSpan=2;
+		groupInfoVolFS.setLayoutData(gridData);
+
+		ScrolledComposite scrolledCreateVol=new ScrolledComposite(groupInfoVolFS,SWT.V_SCROLL);
+		scrolledCreateVol.setLayoutData(new GridData(GridData.FILL_BOTH));
+		Composite compositeWidget=new Composite(scrolledCreateVol,SWT.NONE);
+		compositeWidget.setBackground(compositeBackgroundColor);
+		GridLayout gridLayoutWidget = new GridLayout();
+		gridLayoutWidget.numColumns =2;
+		compositeWidget.setLayout(gridLayoutWidget);
+
+		GridData gridDataTitle = new GridData(GridData.FILL, GridData.CENTER, true, false);
+		gridDataTitle.horizontalSpan = 2;
+		Label lblTitleVolConfig = new Label(compositeWidget, SWT.CENTER|SWT.BORDER);
+		lblTitleVolConfig.setLayoutData(gridDataTitle);
+		lblTitleVolConfig.setFont(fontTitle);
+		lblTitleVolConfig.setBackground(labelTitleBackgroundColor);
+		lblTitleVolConfig.setText("Volume Parameters Information");
+
+		String[] keysProp = (String[]) zfs.getZvol().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		labelsField.clear();
+		textsField.clear();
+		combosField.clear();
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+			if ( ("volume".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue()) && 
+					("volume".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()) || 
+							"volandfs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf())) ) ||
+							("filesystem".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue()) && 
+									("fs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()) || 
+											"volandfs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()) ) )		
+											|| ("snapshot".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue()) && "volandfs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()))
+
+					){
+
+				Label lbl = new Label(compositeWidget, SWT.NONE);
+				lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				lbl.setText(zfs.getZvol().zProperties.get(keyProp).getLabelProperty());
+				lbl.setFont(fontWidget);
+				lbl.setBackground(labelFieldBackgroundColor);
+				if ( "noupdateable".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getType())) {
+					labelsField.add(new Label(compositeWidget, SWT.NONE));
+					labelsField.get(labelsField.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					//labelsField.get(labelsField.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+					labelsField.get(labelsField.size()-1).setData(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+					labelsField.get(labelsField.size()-1).setBackground(labelFieldBackgroundColor);
+				}else{
+					if ( "freeentry".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getType())){
+						textsField.add(new Text(compositeWidget, SWT.WRAP|SWT.BORDER));
+						textsField.get(textsField.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						//textsField.get(textsField.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+						textsField.get(textsField.size()-1).setData(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+						textsField.get(textsField.size()-1).setBackground(textFieldBackgroundColor);
+					}else{
+
+						if ( "nofreeentry".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getType())){
+							combosField.add(new Combo(compositeWidget, SWT.NONE));
+							combosField.get(combosField.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+							combosField.get(combosField.size()-1).setData(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+							//combosField.get(combosField.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getValue());
+							String[] keysPermitValue = (String[])zfs.getZvol().zProperties.get(keyProp).getPermitValue().keySet().toArray(new String[0]);
+							for (int cpt=0;cpt <zfs.getZvol().zProperties.get(keyProp).getPermitValue().size();cpt++){
+								String keyPermitValue = keysPermitValue[cpt];
+								combosField.get(combosField.size()-1).add(zfs.getZvol().zProperties.get(keyProp).getPermitValue().get(keyPermitValue).toString());
+							}
+						}
+					}
+				}
+			}
+		}
+		scrolledCreateVol.setContent(compositeWidget);
+		scrolledCreateVol.setExpandVertical(true);
+		scrolledCreateVol.setExpandHorizontal(true);
+		scrolledCreateVol.setMinSize(compositeWidget.computeSize(SWT.DEFAULT,SWT.DEFAULT));
+
+	}
+
+	private void createTabItemCreateVol(){
+		/******************************************************************************
+		 * CREATE TAB : Create Volume
+		 ******************************************************************************/
+		tbtmCreateVolFS = new TabItem(tabFolderConfig, SWT.NONE);
+		tbtmCreateVolFS.setText("Create Volume/FileSystem");
+		compositeCreateVolFS = new Composite(tabFolderConfig, SWT.NONE);
+		tbtmCreateVolFS.setControl(compositeCreateVolFS);
+		GridLayout gridLayoutCreateVolFS = new GridLayout();
+		gridLayoutCreateVolFS.numColumns =1;
+		compositeCreateVolFS.setLayout(gridLayoutCreateVolFS);
+		compositeCreateVolFS.setBackground(tabFolderBackgroundColor);
+
+
+
+		refreshCreateZfsVolFS();
+
+
+
+
+	}
+
+	private void createTabItemIscsi(){
+		/******************************************************************************
+		 * CREATE TAB : Add ISCSI Config
+		 ******************************************************************************/
+		tbtmIscsi = new TabItem(tabFolderConfig, SWT.NONE);
+		tbtmIscsi.setText("ISCSI Configuration");
+		compositeIscsi = new Composite(tabFolderConfig, SWT.NONE);
+		tbtmIscsi.setControl(compositeIscsi);
+		GridLayout gridLayoutCreateIscsi = new GridLayout();
+		//gridLayoutCreateIscsi.numColumns =2;
+		compositeIscsi.setLayout(gridLayoutCreateIscsi);
+		compositeIscsi.setBackground(tabFolderBackgroundColor);
+
+		Group groupListSession= new Group(compositeIscsi,SWT.NONE);
+		groupListSession.setBackground(groupBackgroundColor);
+		groupListSession.setLayout(new GridLayout());
+		GridData gridDataListSession=new GridData(GridData.FILL_HORIZONTAL);
+		//gridDataServerConfig.heightHint=500;
+		//gridDataServerConfig.minimumHeight=500;
+		gridDataListSession.heightHint=120;
+		groupListSession.setLayoutData(gridDataListSession);
+
+		GridData gridDataTitle = new GridData(GridData.FILL, GridData.CENTER, true, false);
+		gridDataTitle.horizontalSpan = 2;
+		Label lblTitleListSession = new Label(groupListSession, SWT.CENTER|SWT.BORDER);
+		lblTitleListSession.setLayoutData(gridDataTitle);
+		lblTitleListSession.setFont(fontTitle);
+		lblTitleListSession.setBackground(labelTitleBackgroundColor);
+		lblTitleListSession.setText("ISCSI Session List");
+
+		GridData gd_tableIscsiSession = new GridData(GridData.FILL,GridData.FILL, true, true);
+		gd_tableIscsiSession.heightHint = 100;
+		gd_tableIscsiSession.horizontalSpan = 2;
+		tableIscsiSession = new Table(groupListSession, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI);
+		tableIscsiSession.setHeaderVisible(true);
+		tableIscsiSession.setLinesVisible(true);
+		tableIscsiSession.setLayoutData(gd_tableIscsiSession);
+		String[] keysProp = (String[]) zfs.getZiscsi().zProperties.keySet().toArray(new String[0]);
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+			if ( "multinoupdateable".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())){
+				log.info("create tab iscsi");
+				tablecolumnsFieldAddIscsi.add(new TableColumn(tableIscsiSession, SWT.NONE));
+				tablecolumnsFieldAddIscsi.get(tablecolumnsFieldAddIscsi.size()-1).setWidth(150);
+				tablecolumnsFieldAddIscsi.get(tablecolumnsFieldAddIscsi.size()-1).setText(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+			}
+		}
+
+		Group groupSessionParameters= new Group(compositeIscsi,SWT.NONE);
+		groupSessionParameters.setBackground(groupBackgroundColor);
+		GridLayout gridLayoutSessionParemeters = new GridLayout();
+		gridLayoutSessionParemeters.numColumns =2;
+		groupSessionParameters.setLayout(gridLayoutSessionParemeters);
+
+		GridData gridDataSessionParameters=new GridData(GridData.FILL_HORIZONTAL);
+		//gridDataSessionParameters.heightHint=250;
+		groupSessionParameters.setLayoutData(gridDataSessionParameters);
+
+		GridData gridDataTitleSessionParameters = new GridData(GridData.FILL, GridData.CENTER, true, false);
+		gridDataTitleSessionParameters.horizontalSpan = 2;
+		Label lblTitreSessionParameters = new Label(groupSessionParameters, SWT.CENTER|SWT.BORDER);
+		lblTitreSessionParameters.setLayoutData(gridDataTitleSessionParameters);
+		lblTitreSessionParameters.setFont(fontTitle);
+		lblTitreSessionParameters.setBackground(labelTitleBackgroundColor);
+		lblTitreSessionParameters.setText("ISCSI Session Parameters");
+		keysProp = (String[]) zfs.getZiscsi().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		labelsFieldAddIscsi.clear();
+		textsFieldAddIscsi.clear();
+		combosFieldAddIscsi.clear();
+
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+			if ( "noupdateable".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())) {
+				Label lbl = new Label(groupSessionParameters, SWT.NONE);
+				lbl.setFont(fontWidget);
+				lbl.setBackground(labelFieldBackgroundColor);
+				lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				lbl.setText(zfs.getZiscsi().zProperties.get(keyProp).getLabelProperty());
+
+				labelsFieldAddIscsi.add(new Label(groupSessionParameters, SWT.NONE));
+				labelsFieldAddIscsi.get(labelsFieldAddIscsi.size()-1).setBackground(labelFieldBackgroundColor);
+				labelsFieldAddIscsi.get(labelsFieldAddIscsi.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				labelsFieldAddIscsi.get(labelsFieldAddIscsi.size()-1).setData(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+			}else{
+				if ( "freeentry".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())){
+					Label lbl = new Label(groupSessionParameters, SWT.NONE);
+					lbl.setFont(fontWidget);
+					lbl.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));
+					lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					lbl.setText(zfs.getZiscsi().zProperties.get(keyProp).getLabelProperty());
+
+					textsFieldAddIscsi.add(new Text(groupSessionParameters, SWT.WRAP|SWT.BORDER));
+					textsFieldAddIscsi.get(textsFieldAddIscsi.size()-1).setBackground(textFieldBackgroundColor);
+					textsFieldAddIscsi.get(textsFieldAddIscsi.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					//textsField.get(textsField.size()-1).setText(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+					textsFieldAddIscsi.get(textsFieldAddIscsi.size()-1).setData(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+
+				}else{
+
+					if ( "nofreeentry".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())){
+						Label lbl = new Label(groupSessionParameters, SWT.NONE);
+						lbl.setFont(fontWidget);
+						lbl.setBackground(labelFieldBackgroundColor);
+						lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						lbl.setText(zfs.getZiscsi().zProperties.get(keyProp).getLabelProperty());
+
+						combosFieldAddIscsi.add(new Combo(groupSessionParameters, SWT.NONE));
+						combosFieldAddIscsi.get(combosFieldAddIscsi.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						combosFieldAddIscsi.get(combosFieldAddIscsi.size()-1).setData(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+						//combosField.get(combosField.size()-1).setText(zfs.getZiscsi().zProperties.get(keyProp).getValue());
+						String[] keysPermitValue = (String[]) zfs.getZiscsi().zProperties.get(keyProp).getPermitValue().keySet().toArray(new String[0]);
+						for (int cpt=0;cpt <zfs.getZiscsi().zProperties.get(keyProp).getPermitValue().size();cpt++){
+							String keyPermitValue = keysPermitValue[cpt];
+							combosFieldAddIscsi.get(combosFieldAddIscsi.size()-1).add(zfs.getZiscsi().zProperties.get(keyProp).getPermitValue().get(keyPermitValue).toString());
+						}
+					}
+				}
+
+			}
+		}
+		Button btnCreateIscsi = new Button(groupSessionParameters, SWT.None);
+		btnCreateIscsi.setText("Enable Iscsi");
+		btnCreateIscsi.addListener(SWT.Selection, new Listener() {
+
+			public void handleEvent(final Event event) {
+				if (! zfs.getZvol().zProperties.get("name").getValue().equalsIgnoreCase("")){
+
+					String[] keysProp = (String[]) zfs.getZiscsi().zProperties.keySet().toArray(new String[0]);
+					Arrays.sort(keysProp);
+
+					for (int i = 0; i < keysProp.length; i++) {
+						keyProp = keysProp[i];
+						log.debug("btnCreateIscsi :"+keyProp);
+						if ( "noupdateable".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())) {
+							for (int indLabel=0;indLabel<labelsFieldAddIscsi.size();indLabel++){
+								if ( labelsFieldAddIscsi.get(indLabel).getData().equals(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty()) ){
+									zfs.getZiscsi().zProperties.get(keyProp).setValue(labelsFieldAddIscsi.get(indLabel).getText());
+								}
+							}
+						}else{
+							if ( "freeentry".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())) {
+								for (int indText=0;indText<textsFieldAddIscsi.size();indText++){
+									if ( textsFieldAddIscsi.get(indText).getData().equals(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty()) ){
+										zfs.getZiscsi().zProperties.get(keyProp).setValue(textsFieldAddIscsi.get(indText).getText());
+									}
+								}
+
+							}else{
+
+								if ( "nofreeentry".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())) {
+									for (int indList=0;indList<combosFieldAddIscsi.size();indList++){
+										log.debug("first loop"+combosFieldAddIscsi.get(indList).getData()+" "+zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+
+										if ( combosFieldAddIscsi.get(indList).getData().equals(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty()) ){
+											zfs.getZiscsi().zProperties.get(keyProp).setValue(combosFieldAddIscsi.get(indList).getText());
+											log.debug(zfs.getZiscsi().zProperties.get(keyProp).getMultivalues());
+										}
+									}
+								}
+							}
+						}
+					}
+					if ("snapshot".equals(zfs.getZvol().zProperties.get("type").getValue())){
+						zfs.getZiscsi().zProperties.get("iomode").setValue("ro");
+					}
+					zfs.zfsCreateIscsi();
+
+					String[] keysPropError = zfs.getError().keySet().toArray(new String[0]);
+					//String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+					Arrays.sort(keysPropError);
+					String textBox = "";
+					for (int i = 0; i < keysPropError.length; i++) {
+						String keyPropError = keysPropError[i];
+						textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+					}
+					if (keysPropError.length>0){
+						MessageBox messageBoxInfo = new MessageBox(shell, SWT.DIALOG_TRIM);
+						messageBoxInfo.setText("Warning");
+						messageBoxInfo.setMessage(textBox);
+						messageBoxInfo.open();
+					}else{
+						refreshIscsiSession();
+						if ("volume".equals(zfs.getZvol().zProperties.get("type").getValue())){
+							tree.getSelection()[0].setImage(imageStorageOnline);
+						}else{
+							if ("snapshot".equals(zfs.getZvol().zProperties.get("type").getValue())){
+								tree.getSelection()[0].setImage(imageSnapshotOnline);
+							}
+						}
+
+					}
+
+				}	
+			}
+		});
+
+		Button btnDelIscsi = new Button(groupSessionParameters, SWT.None);
+		btnDelIscsi.setText("Disable Iscsi");
+		btnDelIscsi.addListener(SWT.Selection, new Listener() {
+
+
+
+			public void handleEvent(final Event event) {
+
+				if (! zfs.getZvol().zProperties.get("name").getValue().equalsIgnoreCase("")&& !"filesystem".equals(zfs.getZvol().zProperties.get("type").getValue())){
+					zfs.zfsDelIscsi();
+					String[] keysPropError = zfs.getError().keySet().toArray(new String[0]);
+					//String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+					Arrays.sort(keysPropError);
+					String textBox = "";
+					for (int i = 0; i < keysPropError.length; i++) {
+						String keyPropError = keysPropError[i];
+						textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+					}
+					if (keysPropError.length>0){
+						MessageBox messageBoxInfo = new MessageBox(shell, SWT.DIALOG_TRIM);
+						messageBoxInfo.setText("Warning");
+						messageBoxInfo.setMessage(textBox);
+						messageBoxInfo.open();
+					}else{
+						refreshIscsiSession();
+						if ("volume".equals(zfs.getZvol().zProperties.get("type").getValue())){
+							tree.getSelection()[0].setImage(imageStorageOffline);
+						}else{
+							if ("snapshot".equals(zfs.getZvol().zProperties.get("type").getValue())){
+								tree.getSelection()[0].setImage(imageSnapshotOffline);
+							}
+						}
+
+					}
+
+				}
+			}
+		});
+	}
+
+	/************************************************************************************************************************************
+	 * 
+	 * Create tabItem Snapshot Config
+	 * 
+	 ************************************************************************************************************************************/
+
+	private void createTabItemSnapshot(){
+		tbtmSnapshot = new TabItem(tabFolderConfig, SWT.NONE);
+		tbtmSnapshot.setText("Snapshot Configuration");
+		compositeSnapshot = new Composite(tabFolderConfig, SWT.NONE);
+		tbtmSnapshot.setControl(compositeSnapshot);
+		GridLayout gridLayoutActiveSnapshot = new GridLayout();
+		//gridLayoutCreateIscsi.numColumns =2;
+		compositeSnapshot.setLayout(gridLayoutActiveSnapshot);
+		compositeSnapshot.setBackground(tabFolderBackgroundColor);
+
+
+
+		Group groupActiveSnapshot=new Group(compositeSnapshot,SWT.NONE);
+		groupActiveSnapshot.setBackground(groupBackgroundColor);
+		GridLayout gridLayoutWidgetSnapshot = new GridLayout();
+		gridLayoutWidgetSnapshot.numColumns =2;
+		groupActiveSnapshot.setLayout(gridLayoutWidgetSnapshot);
+		GridData gridDataActiveSnapshot=new GridData(GridData.FILL_HORIZONTAL);
+		//gridDataActiveSnapshot.heightHint=500;
+
+		groupActiveSnapshot.setLayoutData(gridDataActiveSnapshot);
+
+		GridData gridDataTitleSnapshots = new GridData(GridData.FILL, GridData.CENTER, true, false);
+		gridDataTitleSnapshots.horizontalSpan = 2;
+		Label lblTitreConfigSnapshots = new Label(groupActiveSnapshot, SWT.CENTER|SWT.BORDER);
+		lblTitreConfigSnapshots.setLayoutData(gridDataTitleSnapshots);
+		lblTitreConfigSnapshots.setFont(fontTitle);
+		lblTitreConfigSnapshots.setText("Enable/Disable Snapshot");
+		lblTitreConfigSnapshots.setBackground(labelTitleBackgroundColor);
+
+		String[] keysProp = (String[]) zsnap.getZsnapshots().zSchedulerProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+
+		labelsFieldSnapshotsValue.clear();
+		labelsFieldSnapshots.clear();
+		textsFieldSnapshots.clear();
+		listsFieldSnaphots.clear();
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];				
+
+			if ( "noupdateable".equalsIgnoreCase(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getType())) {
+				Label lbl = new Label(groupActiveSnapshot, SWT.NONE);
+				lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				lbl.setText(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getLabelProperty());
+				lbl.setFont(fontWidget);
+				lbl.setBackground(labelFieldBackgroundColor);
+				labelsFieldSnapshots.add(new Label(groupActiveSnapshot, SWT.NONE));
+				labelsFieldSnapshots.get(labelsFieldSnapshots.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				//labelsField.get(labelsField.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+				labelsFieldSnapshots.get(labelsFieldSnapshots.size()-1).setData(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getNameProperty());
+				labelsFieldSnapshots.get(labelsFieldSnapshots.size()-1).setBackground(labelFieldBackgroundColor);
+			}else{
+				if ( "freeentry".equalsIgnoreCase(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getType())){
+					Label lbl = new Label(groupActiveSnapshot, SWT.NONE);
+					lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					lbl.setText(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getLabelProperty());
+					lbl.setFont(fontWidget);
+					lbl.setBackground(labelFieldBackgroundColor);
+					textsFieldSnapshots.add(new Text(groupActiveSnapshot,SWT.WRAP| SWT.BORDER));
+					textsFieldSnapshots.get(textsFieldSnapshots.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					//textsField.get(textsField.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+					textsFieldSnapshots.get(textsFieldSnapshots.size()-1).setData(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getNameProperty());
+					textsFieldSnapshots.get(textsFieldSnapshots.size()-1).setBackground(textFieldBackgroundColor);
+				}else{
+
+					if ( "nofreeentry".equalsIgnoreCase(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getType())){
+						Label lbl = new Label(groupActiveSnapshot, SWT.NONE);
+						lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						lbl.setText(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getLabelProperty());
+						lbl.setFont(fontWidget);
+						lbl.setBackground(labelFieldBackgroundColor);
+						labelsFieldSnapshotsValue.add(new Label(groupActiveSnapshot, SWT.BORDER));
+						labelsFieldSnapshotsValue.get(labelsFieldSnapshotsValue.size()-1).setData(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getNameProperty());
+						labelsFieldSnapshotsValue.get(labelsFieldSnapshotsValue.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						labelsFieldSnapshotsValue.get(labelsFieldSnapshotsValue.size()-1).setFont(fontWidget);
+						labelsFieldSnapshotsValue.get(labelsFieldSnapshotsValue.size()-1).setBackground(labelFieldBackgroundColor);
+						listsFieldSnaphots.add(new org.eclipse.swt.widgets.List(groupActiveSnapshot, SWT.WRAP |SWT.BORDER|SWT.V_SCROLL|SWT.MULTI));
+						GridData grdData_listSnapshots = new GridData(GridData.FILL, GridData.CENTER, true, false);
+						grdData_listSnapshots.heightHint=96;
+						grdData_listSnapshots.horizontalSpan=2;
+						listsFieldSnaphots.get(listsFieldSnaphots.size()-1).setLayoutData(grdData_listSnapshots);
+						listsFieldSnaphots.get(listsFieldSnaphots.size()-1).setData(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getNameProperty());
+
+						String [] valuePermiValue = zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getPermitValue().values().toArray(new String[0]);
+						Arrays.sort(valuePermiValue);
+						listsFieldSnaphots.get(listsFieldSnaphots.size()-1).setItems(valuePermiValue);
+					}
+				}
+			}
+		}
+		Button btnEnableSnapshots = new Button(groupActiveSnapshot, SWT.None);
+		btnEnableSnapshots.setText("Enable Snapshots");
+		btnEnableSnapshots.addListener(SWT.Selection, new Listener() {
+			private List<Object> list4List;
+
+			public void handleEvent(final Event event) {
+				zsnap = zfs;
+
+				if (! zfs.getZvol().zProperties.get("name").getValue().equalsIgnoreCase("")){
+
+					String[] keysProp = (String[]) zsnap.getZsnapshots().zSchedulerProperties.keySet().toArray(new String[0]);
+					Arrays.sort(keysProp);
+
+					for (int i = 0; i < keysProp.length; i++) {
+						keyProp = keysProp[i];
+						log.debug("btnEnableSnapshot :"+keyProp);
+						if ( "noupdateable".equalsIgnoreCase(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getType())) {
+							for (int indLabel=0;indLabel<labelsFieldSnapshots.size();indLabel++){
+								if ( labelsFieldSnapshots.get(indLabel).getData().equals(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+									zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).setValue(labelsFieldSnapshots.get(indLabel).getText());
+
+								}
+							}
+						}else{
+							if ( "freeentry".equalsIgnoreCase(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getType())) {
+								for (int indText=0;indText<textsFieldSnapshots.size();indText++){
+									if ( textsFieldSnapshots.get(indText).getData().equals(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+										zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).setValue(textsFieldSnapshots.get(indText).getText());
+									}
+								}
+
+							}else{
+
+								if ( "nofreeentry".equalsIgnoreCase(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getType())) {
+									for (int indList=0;indList<listsFieldSnaphots.size();indList++){
+										log.debug("first loop"+listsFieldSnaphots.get(indList).getData()+" "+zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getNameProperty());
+										if ( listsFieldSnaphots.get(indList).getData().equals(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+											list4List = new ArrayList<Object>();
+											log.debug("second if "+listsFieldSnaphots.get(indList).getSelection().length);
+											for ( int indSelect=0;indSelect<listsFieldSnaphots.get(indList).getSelection().length;indSelect++){
+												String[] keysPropPermit = (String[]) zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getPermitValue().keySet().toArray(new String[0]);
+												log.debug("second loop keys "+keysPropPermit+" selection in use "+listsFieldSnaphots.get(indList).getSelection()[indSelect]);
+												for ( int indPermit=0; indPermit<keysPropPermit.length;indPermit++){
+													String keyPropPermit = keysPropPermit[indPermit];
+													log.debug("Thirth if "+keyPropPermit+" "+zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getPermitValue().get(keyPropPermit));
+													if ( zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getPermitValue().get(keyPropPermit).equals(listsFieldSnaphots.get(indList).getSelection()[indSelect]) ){
+														list4List.add(keyPropPermit);
+
+													}
+												}
+											}
+
+											zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).setMultivalues(list4List);
+											log.debug( " "+list4List+ zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getMultivalues());
+										}
+									}
+								}
+							}
+						}
+					}
+					zsnap.zfsEnableSnapshots();
+					String[] keysPropError = zsnap.getError().keySet().toArray(new String[0]);
+					//String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+					Arrays.sort(keysPropError);
+					String textBox = "";
+					for (int i = 0; i < keysPropError.length; i++) {
+						String keyPropError = keysPropError[i];
+						textBox = textBox +zsnap.getError().get(keyPropError)+".\n";
+					}
+					if (keysPropError.length>0){
+						MessageBox messageBoxInfo = new MessageBox(shell, SWT.DIALOG_TRIM);
+						messageBoxInfo.setText("Warning");
+						messageBoxInfo.setMessage(textBox);
+						messageBoxInfo.open();
+					}else{
+						for (int indList=0;indList<listsFieldSnaphots.size();indList++){
+							listsFieldSnaphots.get(indList).deselectAll();
+						}
+					}
+
+					refreshConfigSnapshot();
+				}
+			}
+		});
+		Button btnDisableSnapshots = new Button(groupActiveSnapshot, SWT.None);
+		btnDisableSnapshots.setText("Disable Snapshots");
+		btnDisableSnapshots.addListener(SWT.Selection, new Listener() {
+
+			public void handleEvent(final Event event) {
+				//zsnap = zfs;
+				boolean checkValue=true;
+				if (! zfs.getZvol().zProperties.get("name").getValue().equalsIgnoreCase("")){
+
+					String[] keysProp = (String[]) zsnap.getZsnapshots().zSchedulerProperties.keySet().toArray(new String[0]);
+					Arrays.sort(keysProp);
+
+					for (int i = 0; i < keysProp.length; i++) {
+						keyProp = keysProp[i];
+						log.debug("btnEnableSnapshot :"+keyProp);
+						if ( zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getValue().equalsIgnoreCase("")){
+							checkValue=false;
+						}
+					}
+					if (checkValue == true){
+						zsnap.zfsDisableSnapshots();
+						refreshConfigSnapshot();
+
+					}
+				}
+
+			}
+		});
+
+	}
+
+	/************************************************************************************************************************************
+	 * 
+	 * Create tabItem Replication Config
+	 * 
+	 ************************************************************************************************************************************/
+
+	private void createTabItemReplica(){
+		tbtmReplica = new TabItem(tabFolderConfig, SWT.NONE);
+		tbtmReplica.setText("Replication Configuration");
+		compositeReplica = new Composite(tabFolderConfig, SWT.NONE);
+		tbtmReplica.setControl(compositeReplica);
+		GridLayout gridLayoutActiveReplica = new GridLayout();
+		//gridLayoutCreateIscsi.numColumns =2;
+		compositeReplica.setLayout(gridLayoutActiveReplica);
+		compositeReplica.setBackground(tabFolderBackgroundColor);
+
+		Group groupActiveReplica=new Group(compositeReplica,SWT.NONE);
+		groupActiveReplica.setBackground(groupBackgroundColor);
+		groupActiveReplica.setLayout(new GridLayout());
+		GridData gridDataActiveReplica=new GridData(SWT.FILL, SWT.FILL, true, true);
+		//gridDataActiveSnapshot.heightHint=500;
+		groupActiveReplica.setLayoutData(gridDataActiveReplica);
+
+		ScrolledComposite scrolledReplicaConfig=new ScrolledComposite(groupActiveReplica,SWT.V_SCROLL);
+		scrolledReplicaConfig.setLayoutData(new GridData(GridData.FILL_BOTH));
+		Composite compositeWidgetReplica=new Composite(scrolledReplicaConfig,SWT.NONE);
+		compositeWidgetReplica.setBackground(compositeBackgroundColor);
+		GridLayout gridLayoutWidget = new GridLayout();
+		gridLayoutWidget.numColumns =2;
+		compositeWidgetReplica.setLayout(gridLayoutWidget);
+
+		GridData gridDataTitleReplica = new GridData(GridData.FILL, GridData.CENTER, true, false);
+		gridDataTitleReplica.horizontalSpan = 2;
+		Label lblTitreConfigReplica = new Label(compositeWidgetReplica, SWT.CENTER|SWT.BORDER);
+		lblTitreConfigReplica.setLayoutData(gridDataTitleReplica);
+		lblTitreConfigReplica.setFont(fontTitle);
+		lblTitreConfigReplica.setText("Enable/Disable Replication");
+		lblTitreConfigReplica.setBackground(labelTitleBackgroundColor);
+
+		String[] keysProp = (String[]) zfs.getZreplicas().zSchedulerProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+
+		labelsFieldReplicaValue.clear();
+		labelsFieldReplica.clear();
+		textsFieldReplica.clear();
+		listsFieldReplica.clear();
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];			
+
+			if ( "nofreeentry".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType()) && (zfs.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue() !=null)){
+				Label lbl = new Label(compositeWidgetReplica, SWT.NONE);
+				lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				lbl.setText(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getLabelProperty());
+				lbl.setFont(fontWidget);
+				lbl.setBackground(labelFieldBackgroundColor);
+				labelsFieldReplicaValue.add(new Label(compositeWidgetReplica, SWT.BORDER));
+				labelsFieldReplicaValue.get(labelsFieldReplicaValue.size()-1).setData(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty());
+				labelsFieldReplicaValue.get(labelsFieldReplicaValue.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				labelsFieldReplicaValue.get(labelsFieldReplicaValue.size()-1).setFont(fontWidget);
+				labelsFieldReplicaValue.get(labelsFieldReplicaValue.size()-1).setBackground(labelFieldBackgroundColor);
+				listsFieldReplica.add(new org.eclipse.swt.widgets.List(compositeWidgetReplica, SWT.WRAP |SWT.BORDER|SWT.V_SCROLL|SWT.MULTI));
+				GridData grdData_listReplicas = new GridData(GridData.FILL, GridData.CENTER, true, false);
+				grdData_listReplicas.heightHint=96;
+				grdData_listReplicas.horizontalSpan=2;
+				listsFieldReplica.get(listsFieldReplica.size()-1).setLayoutData(grdData_listReplicas);
+				listsFieldReplica.get(listsFieldReplica.size()-1).setData(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty());
+				String [] valuePermiValue = zfs.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue().values().toArray(new String[0]);
+				Arrays.sort(valuePermiValue);
+				listsFieldReplica.get(listsFieldReplica.size()-1).setItems(valuePermiValue);
+
+			}
+		}
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];		
+			if ( "noupdateable".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType())) {
+				Label lbl = new Label(compositeWidgetReplica, SWT.NONE);
+				lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				lbl.setText(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getLabelProperty());
+				lbl.setFont(fontWidget);
+				lbl.setBackground(labelFieldBackgroundColor);
+				labelsFieldReplica.add(new Label(compositeWidgetReplica, SWT.NONE));
+				labelsFieldReplica.get(labelsFieldReplica.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+				//labelsField.get(labelsField.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+				labelsFieldReplica.get(labelsFieldReplica.size()-1).setData(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty());
+				labelsFieldReplica.get(labelsFieldReplica.size()-1).setBackground(labelFieldBackgroundColor);
+			}else{
+				if ( "freeentry".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType())){
+					Label lbl = new Label(compositeWidgetReplica, SWT.NONE);
+					lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					lbl.setText(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getLabelProperty());
+					lbl.setFont(fontWidget);
+					lbl.setBackground(labelFieldBackgroundColor);
+					textsFieldReplica.add(new Text(compositeWidgetReplica,SWT.WRAP| SWT.BORDER));
+					textsFieldReplica.get(textsFieldReplica.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					//textsField.get(textsField.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+					textsFieldReplica.get(textsFieldReplica.size()-1).setData(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty());
+					textsFieldReplica.get(textsFieldReplica.size()-1).setBackground(textFieldBackgroundColor);
+				}else{
+
+
+					if ("nofreeentry".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType()) && zfs.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue() ==null){
+
+
+						Label lbl = new Label(compositeWidgetReplica, SWT.NONE);
+						lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						lbl.setText(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getLabelProperty());
+						lbl.setFont(fontWidget);
+						lbl.setBackground(labelFieldBackgroundColor);
+
+						combosFieldReplica.add((new Combo(compositeWidgetReplica, SWT.READ_ONLY)));
+						GridData grdData_listReplicas = new GridData(GridData.FILL, GridData.CENTER, true, false);
+						combosFieldReplica.get(combosFieldReplica.size()-1).setLayoutData(grdData_listReplicas);
+						combosFieldReplica.get(combosFieldReplica.size()-1).setData(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty());
+
+						log.debug("createTabItemReplica "+keyProp);
+						if (keyProp.equalsIgnoreCase("server")){
+							lbl = new Label(compositeWidgetReplica, SWT.NONE);
+							lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+							lbl.setText(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getLabelProperty());
+							lbl.setFont(fontWidget);
+							lbl.setBackground(labelFieldBackgroundColor);
+
+							labelsFieldReplica.add(new Label(compositeWidgetReplica, SWT.NONE));
+							labelsFieldReplica.get(labelsFieldReplica.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+							//labelsField.get(labelsField.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+							labelsFieldReplica.get(labelsFieldReplica.size()-1).setData(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty());
+							labelsFieldReplica.get(labelsFieldReplica.size()-1).setBackground(labelFieldBackgroundColor);
+							combosFieldReplica.get(combosFieldReplica.size()-1).addListener(SWT.Selection, new Listener() {
+
+								public void handleEvent(final Event event) {
+									final Combo comboSrv = (Combo) event.widget;
+									zfs.getServer(comboSrv.getText());
+									List zpoolList = zfs.zpoolList();
+									String[] keysProp = (String[]) zfs.getZreplicas().zSchedulerProperties.keySet().toArray(new String[0]);
+									Arrays.sort(keysProp);
+
+									for (int i = 0; i < keysProp.length; i++) {
+										keyProp = keysProp[i];
+										if ( "nofreeentry".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType())&& zfs.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue() ==null) {
+											if (keyProp.equalsIgnoreCase("replicapool")){
+
+												for (int indCombo=0;indCombo<combosFieldReplica.size();indCombo++){
+													if ( combosFieldReplica.get(indCombo).getData().equals(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+														combosFieldReplica.get(indCombo).removeAll();
+														String[] keysPropSrv = (String[]) zfs.getCacheSession().keySet().toArray(new String[0]);
+														Arrays.sort(keysPropSrv);
+														for (int cptPool=0;cptPool<zpoolList.size();cptPool++){
+															combosFieldReplica.get(indCombo).add(zpoolList.get(cptPool).toString());
+															log.debug("REFRESHConfig3 : "+zpoolList.get(cptPool).toString());
+														}
+													}
+												}
+
+											}
+										}
+									}
+
+								}
+							});
+						}
+
+					}
+				}
+			}
+		}
+		Button btnEnableReplicas = new Button(compositeWidgetReplica, SWT.None);
+		btnEnableReplicas.setText("Enable Replication");
+		btnEnableReplicas.addListener(SWT.Selection, new Listener() {
+			private List<Object> list4List;
+
+			public void handleEvent(final Event event) {
+
+
+				if (! zfs.getZvol().zProperties.get("name").getValue().equalsIgnoreCase("")){
+
+					String[] keysProp = (String[]) zfs.getZreplicas().zSchedulerProperties.keySet().toArray(new String[0]);
+					Arrays.sort(keysProp);
+
+					for (int i = 0; i < keysProp.length; i++) {
+						keyProp = keysProp[i];
+						log.debug("btnEnableReplication :"+keyProp);
+						if ( "noupdateable".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType())) {
+							for (int indLabel=0;indLabel<labelsFieldReplica.size();indLabel++){
+								if ( labelsFieldReplica.get(indLabel).getData().equals(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+									zfs.getZreplicas().zSchedulerProperties.get(keyProp).setValue(labelsFieldReplica.get(indLabel).getText());
+
+								}
+							}
+						}else{
+							if ( "freeentry".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType())) {
+								for (int indText=0;indText<textsFieldReplica.size();indText++){
+									if ( textsFieldReplica.get(indText).getData().equals(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+										zfs.getZreplicas().zSchedulerProperties.get(keyProp).setValue(textsFieldReplica.get(indText).getText());
+									}
+								}
+
+							}else{
+
+								if ( "nofreeentry".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType()) && (zfs.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue() !=null)){
+									for (int indList=0;indList<listsFieldReplica.size();indList++){
+										log.debug("first loop"+listsFieldReplica.get(indList).getData()+" "+zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty());
+										if ( listsFieldReplica.get(indList).getData().equals(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+											list4List = new ArrayList<Object>();
+											log.debug("second if "+listsFieldReplica.get(indList).getSelection().length);
+											for ( int indSelect=0;indSelect<listsFieldReplica.get(indList).getSelection().length;indSelect++){
+												String[] keysPropPermit = (String[]) zfs.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue().keySet().toArray(new String[0]);
+												log.debug("second loop keys "+keysPropPermit+" selection in use "+listsFieldReplica.get(indList).getSelection()[indSelect]);
+												for ( int indPermit=0; indPermit<keysPropPermit.length;indPermit++){
+													String keyPropPermit = keysPropPermit[indPermit];
+													log.debug("Thirth if "+keyPropPermit+" "+zfs.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue().get(keyPropPermit));
+													if ( zfs.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue().get(keyPropPermit).equals(listsFieldReplica.get(indList).getSelection()[indSelect]) ){
+														list4List.add(keyPropPermit);
+
+													}
+												}
+											}
+
+											zfs.getZreplicas().zSchedulerProperties.get(keyProp).setMultivalues(list4List);
+											log.debug( " "+list4List+ zfs.getZreplicas().zSchedulerProperties.get(keyProp).getMultivalues());
+										}
+									}
+								}
+								if ( "nofreeentry".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType()) && (zfs.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue() ==null)){
+									for (int indCombo=0;indCombo<combosFieldReplica.size();indCombo++){
+										if ( combosFieldReplica.get(indCombo).getData().equals(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+											zfs.getZreplicas().zSchedulerProperties.get(keyProp).setValue(combosFieldReplica.get(indCombo).getText());
+										}
+									}
+								}
+							}
+						}
+					}
+					zfs.getZreplicas().zSchedulerProperties.get("name").setValue(zfs.getZvol().zProperties.get("name").getValue());
+					if ( tree.getSelectionCount() >0){
+
+						if (tree.getSelection()[0].getParentItem() != null){
+							TreeItem topRoot = tree.getSelection()[0];
+							while (topRoot.getParentItem() != null){
+								topRoot = topRoot.getParentItem();
+							}
+							TreeItem treeZfsListItem = tree.getSelection()[0];
+							tree.select(treeZfsListItem);
+							zfs.getZserver().zProperties.get("serverIP").setValue(topRoot.getText());
+						}
+					}
+					zfs.zfsEnableReplicas();
+					String[] keysPropError = zfs.getError().keySet().toArray(new String[0]);
+					//String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+					Arrays.sort(keysPropError);
+					String textBox = "";
+					for (int i = 0; i < keysPropError.length; i++) {
+						String keyPropError = keysPropError[i];
+						textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+					}
+					if (keysPropError.length>0){
+						MessageBox messageBoxInfo = new MessageBox(shell, SWT.DIALOG_TRIM);
+						messageBoxInfo.setText("Warning");
+						messageBoxInfo.setMessage(textBox);
+						messageBoxInfo.open();
+					}else{
+						for (int indList=0;indList<listsFieldReplica.size();indList++){
+							listsFieldReplica.get(indList).deselectAll();
+						}
+					}
+
+					refreshConfigReplica();
+				}
+			}
+		});
+		Button btnDisableReplicas = new Button(compositeWidgetReplica, SWT.None);
+		btnDisableReplicas.setText("Disable Replication");
+		btnDisableReplicas.addListener(SWT.Selection, new Listener() {
+
+			public void handleEvent(final Event event) {
+				//zsnap = zfs;
+				boolean checkValue=true;
+				if (! zfs.getZvol().zProperties.get("name").getValue().equalsIgnoreCase("")){
+					zfs.getZreplicas().zSchedulerProperties.get("name").setValue(zfs.getZvol().zProperties.get("name").getValue());
+					zfs.zfsDisableReplicas();
+					refreshConfigReplica();
+
+				}
+
+			}
+		});
+
+		scrolledReplicaConfig.setContent(compositeWidgetReplica);
+		scrolledReplicaConfig.setExpandVertical(true);
+		scrolledReplicaConfig.setExpandHorizontal(true);
+		scrolledReplicaConfig.setMinSize(compositeWidgetReplica.computeSize(SWT.DEFAULT,SWT.DEFAULT));
+	}
+
+
+
+
+	public void refreshTreeZFSList(final TreeItem rootTree){
+
+		thrConnect = new Thread(new Runnable() {
+			public void run() {
+				log.debug("start update ZFS volumes list ....");
+				zfsList = zfs.zfsList();
+
+				log.debug(zfsList.size());
+				for (int i = 0; i < zfsList.size(); i++) {
+					final int ind=i;
+					log.debug("refreshTreeZFSList "+zfsList.get(i));
+					zfs.zfsGetAllVolume(zfsList.get(i).toString());
+
+					//zfs.zfsGetInfoByProperty(zfsList.get(i).toString(), "type");
+					if ("filesystem".equals(zfs.getZvol().zProperties.get("type").getValue())){
+						infoUsedSize=zfs.getZvol().zProperties.get("usedbydataset").getValue()+"/"+zfs.getZvol().zProperties.get("available").getValue();
+					}else{
+						infoUsedSize=zfs.getZvol().zProperties.get("used").getValue()+" / "+zfs.getZvol().zProperties.get("volsize").getValue();
+					}
+					if ( ("volume".equals(zfs.getZvol().zProperties.get("type").getValue()) && zfs.getIscsiListConfigVol(zfsList.get(i).toString()) && ! "".equalsIgnoreCase(zfs.getZiscsi().zProperties.get("tid").getValue()))
+							|| ("filesystem".equals(zfs.getZvol().zProperties.get("type").getValue()) && "yes".equals(zfs.getZvol().zProperties.get("mounted").getValue()))	){
+						Display.getDefault().syncExec(new Runnable() {
+							public void run() {
+								updateItemTreeZfsList(true, zfsList.get(ind).toString(),  rootTree,infoUsedSize,-1);
+							}
+						});	
+					}else{
+						Display.getDefault().syncExec(new Runnable() {
+							public void run() {
+								updateItemTreeZfsList(false, zfsList.get(ind).toString(),  rootTree,infoUsedSize,-1);
+							}
+						});
+					}
+				}
+				Display.getDefault().syncExec(new Runnable() {
+					public void run() {
+						btnConnectServer.setEnabled(true);
+						tabFolderNav.setEnabled(true);
+						wPB.close();
+					}
+				});
+			}	
+
+		});
+		thrConnect.start();
+		log.debug("refreshZFSList");
+	}
+
+	public void refreshTreeZpoolList(){
+
+		if (zfs.getCacheSession().containsKey(zfs.getZserver().zProperties.get("serverIP").getValue()) ){
+			final TreeItem root = treeZpool.getSelection()[0];
+			root.setImage(imageServerOnline);
+			log.debug("refreshTreeZpoolList "+" "+keyProp);
+
+			zpoolList = zfs.zpoolList();
+			for (int indPool = 0; indPool < zpoolList.size(); indPool++) {
+				TreeItem item = new TreeItem(root, 0);
+				item.setText(zpoolList.get(indPool).toString());
+				item.setImage(imageStorage);
+				item.setData(zpoolList.get(indPool).toString());
+				//new TreeItem(root, 0);
+			}
+			boolean checkExistInTree = false;
+
+			for (int ind=0;ind<tree.getItemCount();ind++){
+				log.debug("refreshTreeZpoolList "+tree.getItem(ind).getData().toString()+" "+zfs.getZserver().zProperties.get("serverIP").getValue());
+				if ( tree.getItem(ind).getData().toString().equalsIgnoreCase(zfs.getZserver().zProperties.get("serverIP").getValue())){
+					checkExistInTree=true;
+				}
+			}
+			if ( ! checkExistInTree ){
+				TreeItem rootTreeZvolFS = new TreeItem(tree,SWT.None);
+				rootTreeZvolFS.setText(zfs.getZserver().zProperties.get("serverIP").getValue());
+				rootTreeZvolFS.setData(zfs.getZserver().zProperties.get("serverIP").getValue());
+				rootTreeZvolFS.setImage(imageStorageServer);
+				refreshTreeZFSList(rootTreeZvolFS);	
+			}else{
+				btnConnectServer.setEnabled(true);
+				tabFolderNav.setEnabled(true);
+				wPB.close();
+			}
+		}else{
+			treeZpool.clearAll(true);
+			treeZpool.setItemCount(0);
+			List<Object> listGetServer = zfs.getListServer();
+
+			for (int i=0;i<listGetServer.size();i++){
+				zfs.getServer(listGetServer.get(i).toString());
+				final TreeItem root = new TreeItem(treeZpool,SWT.None);
+				root.setText(zfs.getZserver().zProperties.get("serverIP").getValue());
+				root.setData(zfs.getZserver().zProperties.get("serverIP").getValue());
+				root.setImage(imageServerOffline);
+
+			}
+
+		}
+
+	}
+
+
+	private void refreshInfoServer(){
+		String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+			if ( "noupdateable".equalsIgnoreCase(zfs.getZserver().zProperties.get(keyProp).getType())) {
+				for (int indLabel=0;indLabel<labelsFieldServer.size();indLabel++){
+					if ( labelsFieldServer.get(indLabel).getData().equals(zfs.getZserver().zProperties.get(keyProp).getNameProperty()) ){
+						labelsFieldServer.get(indLabel).setText(zfs.getZserver().zProperties.get(keyProp).getValue());
+					}
+				}
+			}else{
+				if ( "freeentry".equalsIgnoreCase(zfs.getZserver().zProperties.get(keyProp).getType())) {
+					for (int indText=0;indText<textsFieldServer.size();indText++){
+						if ( textsFieldServer.get(indText).getData().equals(zfs.getZserver().zProperties.get(keyProp).getNameProperty()) ){
+							textsFieldServer.get(indText).setText(zfs.getZserver().zProperties.get(keyProp).getValue());
+						}
+					}
+				}else{
+					if ( "nofreeentry".equalsIgnoreCase(zfs.getZserver().zProperties.get(keyProp).getType())) {
+						for (int indCombo=0;indCombo<combosFieldServer.size();indCombo++){
+							if ( combosFieldServer.get(indCombo).getData().equals(zfs.getZserver().zProperties.get(keyProp).getNameProperty()) ){
+								combosFieldServer.get(indCombo).setText(zfs.getZserver().zProperties.get(keyProp).getValue());
+							}
+						}
+					}
+				}
+			}
+		}
+	}
+
+	private void refreshInfoZpool(){
+
+		String[] keysProp = (String[]) zfs.getZpool().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		log.debug(keysProp);
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+			if ( "noupdateable".equalsIgnoreCase(zfs.getZpool().zProperties.get(keyProp).getType())) {
+				for (int indLabel=0;indLabel<labelsFieldPool.size();indLabel++){
+					if ( labelsFieldPool.get(indLabel).getData().equals(zfs.getZpool().zProperties.get(keyProp).getNameProperty()) ){
+						labelsFieldPool.get(indLabel).setText(zfs.getZpool().zProperties.get(keyProp).getValue());
+					}
+				}
+			}else{
+				if ( "freeentry".equalsIgnoreCase(zfs.getZpool().zProperties.get(keyProp).getType())) {
+					for (int indText=0;indText<textsFieldPool.size();indText++){
+						if ( textsFieldPool.get(indText).getData().equals(zfs.getZpool().zProperties.get(keyProp).getNameProperty()) ){
+							textsFieldPool.get(indText).setText(zfs.getZpool().zProperties.get(keyProp).getValue());
+						}
+					}
+				}else{
+					if ( "nofreeentry".equalsIgnoreCase(zfs.getZpool().zProperties.get(keyProp).getType())) {
+						for (int indCombo=0;indCombo<combosFieldPool.size();indCombo++){
+							if ( combosFieldPool.get(indCombo).getData().equals(zfs.getZpool().zProperties.get(keyProp).getNameProperty()) ){
+								combosFieldPool.get(indCombo).setText(zfs.getZserver().zProperties.get(keyProp).getValue());
+							}
+						}
+					}
+				}
+			}
+		}
+
+		//Create Chart Provisioned Space
+		dataCharset.clear();	
+		if ( !zfs.getZpool().zProperties.get("realuseablespace").getValue().equals("")){
+
+			String refUnit =zfs.getZpool().zProperties.get("realuseablespace").getValue().substring(zfs.getZpool().zProperties.get("realuseablespace").getValue().length()-1, zfs.getZpool().zProperties.get("realuseablespace").getValue().length());
+			log.debug(refUnit);
+			float provisionspace = zfs.convertInReferenceUnit(zfs.getZpool().zProperties.get("provisionspace").getValue(), refUnit);
+			float realuseablespace = zfs.convertInReferenceUnit(zfs.getZpool().zProperties.get("realuseablespace").getValue(), refUnit);
+			float provisionspaceInPourcent = guiTrt.dataInPourcent(provisionspace,realuseablespace);
+			float freespace = realuseablespace - provisionspace;
+			float freespaceInPourcent =  guiTrt.dataInPourcent(freespace,realuseablespace);
+			this.dataCharset.put("Provisioned Space: "+ zfs.getZpool().zProperties.get("provisionspace").getValue(), provisionspaceInPourcent);
+			this.dataCharset.put("Free Space: "+BigDecimal.valueOf(freespace).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()+refUnit, freespaceInPourcent  );
+			//this.dataCharset.put("Free : "+BigDecimal.valueOf(freeVal).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()+guiTrt.getUnit(), (100-guiTrt.formatChartDataInPourcent(zfs.getZpool().zProperties.get("provisionedspace").getValue(), zfs.getZpool().zProperties.get("realuseablespace").getValue()))) ;
+			PieDataset dataset = guiTrt.createDataset(dataCharset);  
+			JFreeChart chartVolumeConfig = guiTrt.createChart(dataset, "Provisioned Space on "+zfs.getZpool().zProperties.get("realuseablespace").getValue());
+			if ( chartVolumeComposite != null){
+				if ( !chartVolumeComposite.isDisposed()){
+					chartVolumeComposite.dispose();
+				}	
+			}
+
+			//Create Grid for Chart
+			gridDataChart =new GridData(SWT.FILL, SWT.FILL, true, true);
+			//gridDataChart.heightHint = 200;
+			//Create Composite for Chart
+			chartVolumeComposite= new ChartComposite(compositeZpoolConfig, SWT.BORDER, chartVolumeConfig, true); 
+			chartVolumeComposite.setLayoutData(gridDataChart);
+
+			//Create Chart Used Space
+			dataCharset.clear();
+			log.debug(refUnit);
+			float usedspace = zfs.convertInReferenceUnit(zfs.getZvol().zProperties.get("used").getValue(), refUnit);
+			float usedspaceInPourcent = guiTrt.dataInPourcent(usedspace,realuseablespace);
+			log.debug("usedspace :"+usedspace+" realuseablespace : "+realuseablespace+" usedspaceInPourcent "+usedspaceInPourcent);
+			freespace = realuseablespace - usedspace;
+			freespaceInPourcent =  guiTrt.dataInPourcent(freespace,realuseablespace);
+			log.debug("freespace : "+freespace+" freespaceInPourcent :"+freespaceInPourcent);
+			this.dataCharset.put("Used Space: "+ zfs.getZvol().zProperties.get("used").getValue(), usedspaceInPourcent);
+			this.dataCharset.put("Free Space: "+BigDecimal.valueOf(freespace).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()+refUnit, freespaceInPourcent  );
+			//this.dataCharset.put("Free : "+BigDecimal.valueOf(freeVal).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()+guiTrt.getUnit(), (100-guiTrt.formatChartDataInPourcent(zfs.getZpool().zProperties.get("provisionedspace").getValue(), zfs.getZpool().zProperties.get("realuseablespace").getValue()))) ;
+			PieDataset datasetUsed = guiTrt.createDataset(dataCharset);  
+			JFreeChart chartZpoolUsedSpace = guiTrt.createChart(datasetUsed, "Used Space on "+zfs.getZpool().zProperties.get("realuseablespace").getValue());
+			if ( chartZpoolUsedComposite != null){
+				if ( !chartZpoolUsedComposite.isDisposed()){
+					chartZpoolUsedComposite.dispose();
+				}	
+			}
+
+			//Create Grid for Chart
+			gridDataChart =new GridData(SWT.FILL, SWT.FILL, true, true);
+			gridDataChart.heightHint = 200;
+			//gridDataChart.horizontalSpan = 2;
+			//Create Composite for Chart
+			chartZpoolUsedComposite= new ChartComposite(compositeZpoolConfig, SWT.BORDER, chartZpoolUsedSpace, true); 
+			chartZpoolUsedComposite.setLayoutData(gridDataChart);
+
+
+			compositeZpoolConfig.layout();	
+		}
+
+	}
+
+	private void  refreshDisks(){
+		zfs.getZpoolStatus();
+		for ( int cptL=0;cptL<labelsFieldDisks.size();cptL++){
+			if ( !labelsFieldDisks.get(cptL).isDisposed()){
+				labelsFieldDisks.get(cptL).dispose();	
+			}
+		}
+		for ( int cptL=0;cptL<labelsFieldZRaid.size();cptL++){
+			if ( !labelsFieldZRaid.get(cptL).isDisposed()){
+				labelsFieldZRaid.get(cptL).dispose();	
+			}
+		}
+
+		if ( groupDisks != null && !groupDisks.isDisposed()){
+			groupDisks.dispose();
+		}
+		groupDisks = new Group(compositeDisks,SWT.NONE);
+		groupDisks.setBackground(groupBackgroundColor);
+		groupDisks.setLayout(new GridLayout());
+
+		GridData gridDataDisks=new GridData(SWT.FILL, SWT.FILL, true, true);
+		gridDataDisks.horizontalSpan=6;
+		groupDisks.setLayoutData(gridDataDisks);
+
+		if (scrolledDisks != null && !scrolledDisks.isDisposed()){
+			scrolledDisks.isDisposed();
+		}
+		scrolledDisks=new ScrolledComposite(groupDisks,SWT.V_SCROLL);
+		scrolledDisks.setLayoutData(new GridData(GridData.FILL_BOTH));
+
+		if (compositeWidgetDisks != null && !compositeWidgetDisks.isDisposed()){
+			compositeWidgetDisks.isDisposed();
+		}
+		compositeWidgetDisks=new Composite(scrolledDisks,SWT.NONE);
+		compositeWidgetDisks.setBackground(compositeBackgroundColor);
+		GridLayout gridLayoutWidgetDisks = new GridLayout();
+		gridLayoutWidgetDisks.numColumns =6;
+		compositeWidgetDisks.setLayout(gridLayoutWidgetDisks);
+
+		GridData gridDataTitleDisks = new GridData(GridData.FILL, GridData.CENTER, true, false);
+		gridDataTitleDisks.horizontalSpan = 6;
+		if (compositeWidgetDisks != null && !compositeWidgetDisks.isDisposed()){
+			compositeWidgetDisks.isDisposed();
+		}
+		Label lblTitleInfoDisks = new Label(compositeWidgetDisks, SWT.CENTER|SWT.BORDER);
+		lblTitleInfoDisks.setLayoutData(gridDataTitleDisks);
+		lblTitleInfoDisks.setFont(fontTitle);
+		lblTitleInfoDisks.setBackground(labelTitleBackgroundColor);
+		lblTitleInfoDisks.setText("ZFS Informations Disks");
+
+		String[] keysPropHashDisks = (String[]) zfs.getHashDisks().keySet().toArray(new String[0]);
+		Arrays.sort(keysPropHashDisks);
+		String[] keysPropHashZraid = (String[]) zfs.getHashZRaid().keySet().toArray(new String[0]);
+		Arrays.sort(keysPropHashZraid);
+		//Arrays.sort(keysPropHashZraid);
+		for (int cptZraid=0;cptZraid<zfs.getHashZRaid().size();cptZraid++){
+
+			String keyPropHashZraid = keysPropHashZraid[cptZraid];
+			GridData gridDataLabelZraid = new GridData(GridData.FILL, GridData.CENTER, true, false);
+			gridDataLabelZraid.horizontalSpan=6;
+			if (zfs.getZpool().zProperties.get("name").getValue().equalsIgnoreCase(zfs.getHashZRaid().get(keyPropHashZraid).zProperties.get("poolname").getValue())){
+				//			lbl.setText(zfs.getHashZRaid().get(keyPropHashZraid).zProperties.get("name").getValue()+" "+zfs.getHashZRaid().get(keyPropHashZraid).zProperties.get("raidid").getValue()+zfs.getHashZRaid().get(keyPropHashZraid).zProperties.get("raidtype").getValue());
+				if ( !"".equals(zfs.getHashZRaid().get(keyPropHashZraid).zProperties.get("raidid").getValue())){
+					String labelTextZraid="Pool : "+zfs.getHashZRaid().get(keyPropHashZraid).zProperties.get("poolname").getValue()+" - "+"Type : "+zfs.getHashZRaid().get(keyPropHashZraid).zProperties.get("raidtype").getValue()+ " ID : "+zfs.getHashZRaid().get(keyPropHashZraid).zProperties.get("raidid").getValue();
+					labelsFieldZRaid.add(new Label(compositeWidgetDisks, SWT.BORDER|SWT.CENTER));
+					labelsFieldZRaid.get(labelsFieldZRaid.size()-1).setLayoutData(gridDataLabelZraid);
+					labelsFieldZRaid.get(labelsFieldZRaid.size()-1).setFont(fontSubTitle);
+					labelsFieldZRaid.get(labelsFieldZRaid.size()-1).setBackground(labelFieldBackgroundColor);
+					labelsFieldZRaid.get(labelsFieldZRaid.size()-1).setText(labelTextZraid);
+					labelsFieldZRaid.get(labelsFieldZRaid.size()-1).setData(labelTextZraid);
+				}
+
+
+				for (int cpt=0;cpt<keysPropHashDisks.length;cpt++){
+					//log.debug("RefreshDisks "+keysPropHashDisks[cpt] );
+					String keyPropHashDisks = keysPropHashDisks[cpt];
+					if (zfs.getHashDisks().get(keyPropHashDisks).zProperties.get("poolname").getValue().equalsIgnoreCase(zfs.getZpool().zProperties.get("name").getValue())&& zfs.getHashZRaid().get(keyPropHashZraid).zProperties.get("raidid").getValue().equalsIgnoreCase(zfs.getHashDisks().get(keyPropHashDisks).zProperties.get("raidid").getValue())){
+
+						labelsFieldDisks.add(new Label(compositeWidgetDisks, SWT.NONE));
+						labelsFieldDisks.get(labelsFieldDisks.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						labelsFieldDisks.get(labelsFieldDisks.size()-1).setFont(fontWidget);
+						labelsFieldDisks.get(labelsFieldDisks.size()-1).setBackground(labelFieldBackgroundColor);
+
+						if (!"0".equalsIgnoreCase(zfs.getHashDisks().get(keyPropHashDisks).zProperties.get("errorread").getValue()) ||
+								!"0".equalsIgnoreCase(zfs.getHashDisks().get(keyPropHashDisks).zProperties.get("errorwrite").getValue()) ||
+								!"0".equalsIgnoreCase(zfs.getHashDisks().get(keyPropHashDisks).zProperties.get("errorchecksum").getValue())||
+								(!"".equalsIgnoreCase(zfs.getHashDisks().get(keyPropHashDisks).zProperties.get("smarthealthstatus").getValue()) && 
+										!"OK".equalsIgnoreCase(zfs.getHashDisks().get(keyPropHashDisks).zProperties.get("smarthealthstatus").getValue()))
+								){
+							labelsFieldDisks.get(labelsFieldDisks.size()-1).setImage(imageHardDiskOffline);	
+						}else{
+							labelsFieldDisks.get(labelsFieldDisks.size()-1).setImage(imageHardDiskOnline);
+						}
+
+						//labelsFieldZRaid.get(labelsFieldZRaid.size()-1).setData(labelTextZraid);
+						String[] keysProp = (String[]) zfs.getHashDisks().get(keyPropHashDisks).zProperties.keySet().toArray(new String[0]);
+						Arrays.sort(keysProp);
+						String valueProp="";
+
+						for (int i = 0; i < keysProp.length; i++) {
+							keyProp = keysProp[i];
+							if ( "noupdateable".equalsIgnoreCase(zfs.getHashDisks().get(keyPropHashDisks).zProperties.get(keyProp).getType()) ){
+								valueProp = valueProp+zfs.getHashDisks().get(keyPropHashDisks).zProperties.get(keyProp).getLabelProperty()+" :"+zfs.getHashDisks().get(keyPropHashDisks).zProperties.get(keyProp).getValue()+"\n";
+							}
+						}	
+						labelsFieldDisks.get(labelsFieldDisks.size()-1).setToolTipText(valueProp);	
+						//log.debug(valueProp);
+					}
+
+				}	
+			}
+
+		}
+		scrolledDisks.setContent(compositeWidgetDisks);
+		scrolledDisks.setExpandVertical(true);
+		scrolledDisks.setExpandHorizontal(true);
+		scrolledDisks.setMinSize(compositeWidgetDisks.computeSize(SWT.DEFAULT,SWT.DEFAULT));
+
+		scrolledDisks.layout();
+		groupDisks.layout();
+		compositeWidgetDisks.layout();
+		compositeDisks.layout();
+		tabFolderConfig.layout();
+
+	}
+
+
+	private void  refreshCreateZfsVolFS(){
+
+		String[] keysProp = (String[]) zfs.getZvol().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+		log.debug("Label SIze "+labelsFieldCreateVol.size());
+		for ( int cptL=0;cptL<labelsFieldCreateVol.size();cptL++){
+			labelsFieldCreateVol.get(cptL).dispose();	
+
+		}
+		for ( int cptL=0;cptL<textsFieldCreateVol.size();cptL++){
+			textsFieldCreateVol.get(cptL).dispose();	
+		}
+		for ( int cptL=0;cptL<combosFieldCreateVol.size();cptL++){
+			combosFieldCreateVol.get(cptL).dispose();	
+		}
+		labelsFieldCreateVol.clear();
+		textsFieldCreateVol.clear();
+		combosFieldCreateVol.clear();
+		if (btnCreateZfsVolFS!=null && !btnCreateZfsVolFS.isDisposed()){
+			btnCreateZfsVolFS.dispose();
+		}
+		if (groupCreateVolFS !=null && !groupCreateVolFS.isDisposed()){
+			groupCreateVolFS.dispose();
+		}
+		if (scrolledCreateVol !=null &&!scrolledCreateVol.isDisposed()){
+			scrolledCreateVol.dispose();
+		}
+		if (compositeWidgetCreateVolFS!=null && !compositeWidgetCreateVolFS.isDisposed()){
+			compositeWidgetCreateVolFS.dispose();
+		}
+
+
+
+
+		groupCreateVolFS=new Group(compositeCreateVolFS,SWT.NONE);
+		groupCreateVolFS.setBackground(groupBackgroundColor);
+		groupCreateVolFS.setLayout(new GridLayout());
+		//GridData gridData=new GridData(GridData.FILL_HORIZONTAL);
+		GridData gridData=new GridData(SWT.FILL, SWT.FILL, true, true);
+		//gridData.heightHint=450;
+		groupCreateVolFS.setLayoutData(gridData);
+		scrolledCreateVol=new ScrolledComposite(groupCreateVolFS,SWT.V_SCROLL);
+		scrolledCreateVol.setLayoutData(new GridData(GridData.FILL_BOTH));
+		compositeWidgetCreateVolFS=new Composite(scrolledCreateVol,SWT.NONE);
+		compositeWidgetCreateVolFS.setBackground(compositeBackgroundColor);
+		GridLayout gridLayoutPane = new GridLayout();
+		gridLayoutPane.numColumns =2;
+		compositeWidgetCreateVolFS.setLayout(gridLayoutPane);
+
+		GridData gridDataTitle = new GridData(GridData.FILL, GridData.CENTER, true, false);
+		gridDataTitle.horizontalSpan = 2;
+		Label lblTitle = new Label(compositeWidgetCreateVolFS, SWT.CENTER|SWT.BORDER);
+		lblTitle.setLayoutData(gridDataTitle);
+		lblTitle.setFont(fontTitle);
+		lblTitle.setBackground(labelTitleBackgroundColor);
+		lblTitle.setText("Create a ZFS Volume or ZFS FileSystem");
+
+
+
+		labelsFieldCreateVol.add(new Label(compositeWidgetCreateVolFS, SWT.NONE));
+		labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+		labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setBackground(labelFieldBackgroundColor);
+		labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setText(zfs.getZvol().zProperties.get("type").getLabelProperty());
+		labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setData(zfs.getZvol().zProperties.get("type").getNameProperty());
+
+		combosFieldCreateVol.add(new Combo(compositeWidgetCreateVolFS, SWT.NONE));
+		combosFieldCreateVol.get(combosFieldCreateVol.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+		combosFieldCreateVol.get(combosFieldCreateVol.size()-1).setData(zfs.getZvol().zProperties.get("type").getNameProperty());
+		String[] keysPermitValue = (String[]) zfs.getZvol().zProperties.get("type").getPermitValue().keySet().toArray(new String[0]);
+		for (int cpt=0;cpt <zfs.getZvol().zProperties.get("type").getPermitValue().size();cpt++){
+			String keyPermitValue = keysPermitValue[cpt];
+			combosFieldCreateVol.get(combosFieldCreateVol.size()-1).add(zfs.getZvol().zProperties.get("type").getPermitValue().get(keyPermitValue).toString());
+		}
+
+		combosFieldCreateVol.get(combosFieldCreateVol.size()-1).setText(zfs.getZvol().zProperties.get("type").getValue());
+		//zfs.getZvol().zProperties.get("type").setValue(zfs.getZvol().zProperties.get("type").getPermitValue().get("volume").toString());
+		combosFieldCreateVol.get(combosFieldCreateVol.size()-1).addListener(SWT.Selection, new Listener() {
+
+			public void handleEvent(final Event event) {
+				final Combo comboType = (Combo) event.widget;
+
+
+				zfs.getZvol().zProperties.get("type").setValue(comboType.getText());
+				refreshCreateZfsVolFS();
+				compositeWidgetCreateVolFS.layout();
+				compositeCreateVolFS.layout();
+
+				log.debug(combosFieldCreateVol.size());
+			}
+		});
+
+		labelsFieldCreateVol.add(new Label(compositeWidgetCreateVolFS, SWT.NONE));
+		labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+		labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setBackground(labelFieldBackgroundColor);
+		labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setText(zfs.getZvol().zProperties.get("name").getLabelProperty());
+		labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setData(zfs.getZvol().zProperties.get("name").getNameProperty());
+
+		textsFieldCreateVol.add(new Text(compositeWidgetCreateVolFS, SWT.WRAP|SWT.BORDER));
+		textsFieldCreateVol.get(textsFieldCreateVol.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+		textsFieldCreateVol.get(textsFieldCreateVol.size()-1).setData(zfs.getZvol().zProperties.get("name").getNameProperty());
+		textsFieldCreateVol.get(textsFieldCreateVol.size()-1).setText("");
+
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+			log.debug(keyProp);
+			if ( ("volume".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue()) && 
+					("volume".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()) || 
+							"volandfs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf())) ) ||
+							("filesystem".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue()) && 
+									("fs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()) || 
+											"volandfs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()) ) )		
+											|| ("snapshot".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue()) && "volandfs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()))
+
+					){
+				log.debug("DEBUG : "+ keyProp+ " "+zfs.getZvol().zProperties.get(keyProp).getType());
+				if ( "freeentry".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getType()) ||keyProp =="volblocksize"){
+					labelsFieldCreateVol.add(new Label(compositeWidgetCreateVolFS, SWT.NONE));
+					labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setBackground(labelFieldBackgroundColor);
+					labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getLabelProperty());
+					labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setData(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+
+					textsFieldCreateVol.add(new Text(compositeWidgetCreateVolFS, SWT.WRAP|SWT.BORDER));
+					textsFieldCreateVol.get(textsFieldCreateVol.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					textsFieldCreateVol.get(textsFieldCreateVol.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getValue());
+					textsFieldCreateVol.get(textsFieldCreateVol.size()-1).setData(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+
+				}else{
+
+					if ( "nofreeentry".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getType()) && !"type".equals(keyProp)){
+						labelsFieldCreateVol.add(new Label(compositeWidgetCreateVolFS, SWT.NONE));
+						labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setBackground(labelFieldBackgroundColor);
+						labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getLabelProperty());
+						labelsFieldCreateVol.get(labelsFieldCreateVol.size()-1).setData(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+
+						combosFieldCreateVol.add(new Combo(compositeWidgetCreateVolFS, SWT.NONE));
+						combosFieldCreateVol.get(combosFieldCreateVol.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						combosFieldCreateVol.get(combosFieldCreateVol.size()-1).setData(zfs.getZvol().zProperties.get(keyProp).getNameProperty());
+						combosFieldCreateVol.get(combosFieldCreateVol.size()-1).setText(zfs.getZvol().zProperties.get(keyProp).getValue());
+						keysPermitValue = (String[]) zfs.getZvol().zProperties.get(keyProp).getPermitValue().keySet().toArray(new String[0]);
+						for (int cpt=0;cpt <zfs.getZvol().zProperties.get(keyProp).getPermitValue().size();cpt++){
+							String keyPermitValue = keysPermitValue[cpt];
+							combosFieldCreateVol.get(combosFieldCreateVol.size()-1).add(zfs.getZvol().zProperties.get(keyProp).getPermitValue().get(keyPermitValue).toString());
+						}
+					}
+
+				}
+
+			}
+
+		}
+
+
+		scrolledCreateVol.setContent(compositeWidgetCreateVolFS);
+		scrolledCreateVol.setExpandVertical(true);
+		scrolledCreateVol.setExpandHorizontal(true);
+		scrolledCreateVol.setMinSize(compositeWidgetCreateVolFS.computeSize(SWT.DEFAULT,SWT.DEFAULT));
+
+
+		if (groupActiveIscsi!=null && !groupActiveIscsi.isDisposed() ){
+			groupActiveIscsi.dispose();
+		}
+		if  ("volume".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue())){
+			groupActiveIscsi=new Group(compositeCreateVolFS,SWT.NONE);
+			groupActiveIscsi.setBackground(groupBackgroundColor);
+			groupActiveIscsi.setLayout(new GridLayout());
+			GridLayout gridLayoutActiveIscsi = new GridLayout();
+			gridLayoutActiveIscsi.numColumns =2;
+			groupActiveIscsi.setLayout(gridLayoutActiveIscsi);
+			//GridData gridDataActiveIscsi=new GridData(GridData.FILL_HORIZONTAL);
+			GridData gridDataActiveIscsi=new GridData(SWT.FILL, SWT.FILL, true, true);
+			//gridDataActiveIscsi.heightHint=200;
+			groupActiveIscsi.setLayoutData(gridDataActiveIscsi);
+
+			GridData gridDataTitleIscsi = new GridData(GridData.FILL, GridData.CENTER, true, false);
+			gridDataTitleIscsi.horizontalSpan = 2;
+			//Iscsi Section
+			Label lblTitleIscsi = new Label(groupActiveIscsi, SWT.CENTER|SWT.BORDER);
+			lblTitleIscsi.setLayoutData(gridDataTitleIscsi);
+			lblTitleIscsi.setFont(fontTitle);
+			lblTitleIscsi.setBackground(labelTitleBackgroundColor);
+			lblTitleIscsi.setText("ISCSI Parameters");
+			keysProp = (String[]) zfs.getZiscsi().zProperties.keySet().toArray(new String[0]);
+			Arrays.sort(keysProp);
+			labelsFieldCreateIscsi.clear();
+			textsFieldCreateIscsi.clear();
+			combosFieldCreateIscsi.clear();
+			for (int i = 0; i < keysProp.length; i++) {
+				keyProp = keysProp[i];
+
+
+				if ( "noupdateable".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())) {
+					Label lbl = new Label(groupActiveIscsi, SWT.NONE);
+					lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					lbl.setText(zfs.getZiscsi().zProperties.get(keyProp).getLabelProperty());
+					lbl.setFont(fontWidget);
+					lbl.setBackground(labelFieldBackgroundColor);
+					labelsFieldCreateIscsi.add(new Label(groupActiveIscsi, SWT.NONE));
+					labelsFieldCreateIscsi.get(labelsFieldCreateIscsi.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+					labelsFieldCreateIscsi.get(labelsFieldCreateIscsi.size()-1).setBackground(labelFieldBackgroundColor);
+					//labelsField.get(labelsField.size()-1).setText(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+					labelsFieldCreateIscsi.get(labelsFieldCreateIscsi.size()-1).setData(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+				}else{
+					if ( "freeentry".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())){
+						Label lbl = new Label(groupActiveIscsi, SWT.NONE);
+						lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						lbl.setText(zfs.getZiscsi().zProperties.get(keyProp).getLabelProperty());
+						lbl.setFont(fontWidget);
+						lbl.setBackground(labelFieldBackgroundColor);
+
+						textsFieldCreateIscsi.add(new Text(groupActiveIscsi, SWT.WRAP|SWT.BORDER));
+						textsFieldCreateIscsi.get(textsFieldCreateIscsi.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+						textsFieldCreateIscsi.get(textsFieldCreateIscsi.size()-1).setBackground(textFieldBackgroundColor);
+						//textsField.get(textsField.size()-1).setText(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+						textsFieldCreateIscsi.get(textsFieldCreateIscsi.size()-1).setData(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+
+					}else{
+
+						if ( "nofreeentry".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())){
+							Label lbl = new Label(groupActiveIscsi, SWT.NONE);
+							lbl.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+							lbl.setText(zfs.getZiscsi().zProperties.get(keyProp).getLabelProperty());
+							lbl.setFont(fontWidget);
+							lbl.setBackground(labelFieldBackgroundColor);
+
+							combosFieldCreateIscsi.add(new Combo(groupActiveIscsi, SWT.NONE));
+							combosFieldCreateIscsi.get(combosFieldCreateIscsi.size()-1).setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+							combosFieldCreateIscsi.get(combosFieldCreateIscsi.size()-1).setData(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+							//combosField.get(combosField.size()-1).setText(zfs.getZiscsi().zProperties.get(keyProp).getValue());
+							keysPermitValue = (String[]) zfs.getZiscsi().zProperties.get(keyProp).getPermitValue().keySet().toArray(new String[0]);
+							for (int cpt=0;cpt <zfs.getZiscsi().zProperties.get(keyProp).getPermitValue().size();cpt++){
+								String keyPermitValue = keysPermitValue[cpt];
+								combosFieldCreateIscsi.get(combosFieldCreateIscsi.size()-1).add(zfs.getZiscsi().zProperties.get(keyProp).getPermitValue().get(keyPermitValue).toString());
+							}
+						}
+					}
+
+				}
+				log.debug("DEBUG : "+ keyProp+ " "+zfs.getZiscsi().zProperties.get(keyProp).getType());
+
+			}
+
+		}
+		btnCreateZfsVolFS = new Button(compositeCreateVolFS, SWT.None);
+		GridData gridDataBtnCreateZfsVolFS = new GridData(GridData.FILL, GridData.CENTER, true, false);
+		gridDataBtnCreateZfsVolFS.horizontalSpan = 2;
+		btnCreateZfsVolFS.setLayoutData(gridDataBtnCreateZfsVolFS);
+		btnCreateZfsVolFS.setText("Create Now");
+		btnCreateZfsVolFS.addListener(SWT.Selection, new Listener() {
+
+			public void handleEvent(final Event event) {
+
+				for (int indText=0;indText<textsFieldCreateVol.size();indText++){
+					if (textsFieldCreateVol.get(indText).getData().toString().equals("name")){
+						zfs.getZvol().zProperties.get("name").setValue(textsFieldCreateVol.get(indText).getText());
+					}
+				}
+				if (! zfs.getZvol().zProperties.get("name").getValue().equalsIgnoreCase("") ){
+					String[] keysProp = (String[]) zfs.getZvol().zProperties.keySet().toArray(new String[0]);
+					Arrays.sort(keysProp);
+					for (int i = 0; i < keysProp.length; i++) {
+						keyProp = keysProp[i];
+						log.debug(keyProp);
+						if ( ("volume".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue()) && 
+								("volume".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()) || 
+										"volandfs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf())) ) ||
+										("filesystem".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue()) && 
+												("fs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()) || 
+														"volandfs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()) ) )		
+														|| ("snapshot".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue()) && "volandfs".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getPropertyOf()))
+
+								){
+							log.debug("DEBUG : "+ keyProp+ " "+zfs.getZvol().zProperties.get(keyProp).getType());
+							if ( "freeentry".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getType()) ||keyProp =="volblocksize"){
+								for (int indText=0;indText<textsFieldCreateVol.size();indText++){
+									if ( textsFieldCreateVol.get(indText).getData().equals(keyProp) ){
+										zfs.getZvol().zProperties.get(keyProp).setValue(textsFieldCreateVol.get(indText).getText());
+									}
+								}
+							}else{
+
+								if ( "nofreeentry".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getType()) && !"type".equals(keyProp)){
+									for (int indCombo=0;indCombo<combosFieldCreateVol.size();indCombo++){
+										if ( combosFieldCreateVol.get(indCombo).getData().equals(keyProp) ){
+											zfs.getZvol().zProperties.get(keyProp).setValue(combosFieldCreateVol.get(indCombo).getText());
+										}
+									}
+								}
+							}
+						}
+					}
+
+					thrCreateZFSVol = new Thread(new Runnable(){
+						public void run() {
+							Display.getDefault().syncExec(new Runnable() {
+								public void run() {
+									if (wPB.s.isDisposed()){
+										wPB = new guiProgress(shell.getDisplay(), shell.getLocation().x, shell.getLocation().y);
+										wPB.open();
+									}else{
+										wPB.open();
+									}
+
+
+								}
+							});
+
+							zfs.zfsCreateVolFS();
+							Display.getDefault().syncExec(new Runnable(){
+								public void run(){
+									String[] keysPropError = zfs.getError().keySet().toArray(new String[0]);
+									//String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+									Arrays.sort(keysPropError);
+									String textBox = "";
+									for (int i = 0; i < keysPropError.length; i++) {
+										String keyPropError = keysPropError[i];
+										textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+									}
+									if (keysPropError.length>0){
+										MessageBox messageBoxInfo = new MessageBox(shell, SWT.DIALOG_TRIM);
+										messageBoxInfo.setText("Warning");
+										messageBoxInfo.setMessage(textBox);
+										messageBoxInfo.open();
+										wPB.close();
+									}else{
+										if ("volume".equals(zfs.getZvol().zProperties.get("type").getValue())||
+												"snapshot".equals(zfs.getZvol().zProperties.get("type").getValue())){
+
+											String[] keysProp = (String[]) zfs.getZiscsi().zProperties.keySet().toArray(new String[0]);
+											Arrays.sort(keysProp);
+
+											for (int i = 0; i < keysProp.length; i++) {
+												keyProp = keysProp[i];
+												log.debug("btnCreateIscsi :"+keyProp);
+												if ( "noupdateable".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())) {
+													for (int indLabel=0;indLabel<labelsFieldCreateIscsi.size();indLabel++){
+														if ( labelsFieldCreateIscsi.get(indLabel).getData().equals(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty()) ){
+															zfs.getZiscsi().zProperties.get(keyProp).setValue(labelsFieldCreateIscsi.get(indLabel).getText());
+														}
+													}
+												}else{
+													if ( "freeentry".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())) {
+														for (int indText=0;indText<textsFieldCreateIscsi.size();indText++){
+															if ( textsFieldCreateIscsi.get(indText).getData().equals(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty()) ){
+																zfs.getZiscsi().zProperties.get(keyProp).setValue(textsFieldCreateIscsi.get(indText).getText());
+															}
+														}
+
+													}else{
+
+														if ( "nofreeentry".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())) {
+															for (int indList=0;indList<combosFieldCreateIscsi.size();indList++){
+																log.debug("first loop"+combosFieldCreateIscsi.get(indList).getData()+" "+zfs.getZiscsi().zProperties.get(keyProp).getNameProperty());
+
+																if ( combosFieldCreateIscsi.get(indList).getData().equals(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty()) ){
+																	zfs.getZiscsi().zProperties.get(keyProp).setValue(combosFieldCreateIscsi.get(indList).getText());
+																	log.debug(zfs.getZiscsi().zProperties.get(keyProp).getMultivalues());
+																}
+															}
+														}
+													}
+												}
+											}
+											if ("snapshot".equals(zfs.getZvol().zProperties.get("type").getValue())){
+												zfs.getZiscsi().zProperties.get("iomode").setValue("ro");
+											}
+											zfs.getZiscsi().zProperties.get("name").setValue(zfs.getZpool().zProperties.get("name").getValue()+"/"+zfs.getZvol().zProperties.get("name").getValue());
+											zfs.zfsCreateIscsi();
+											keysPropError = zfs.getError().keySet().toArray(new String[0]);
+											//String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+											Arrays.sort(keysPropError);
+											textBox = "";
+											for (int i = 0; i < keysPropError.length; i++) {
+												String keyPropError = keysPropError[i];
+												textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+											}
+											if (keysPropError.length>0){
+												MessageBox messageBoxInfo = new MessageBox(shell, SWT.DIALOG_TRIM);
+												messageBoxInfo.setText("Warning");
+												messageBoxInfo.setMessage("ZFS Volume created but ISCSI Configuration is failed.\n"+textBox);
+												messageBoxInfo.open();
+												wPB.close();
+											}
+										}
+
+
+										int indRoot=0;
+										int indItem=0;
+										for (int indT=0;indT<tree.getItemCount();indT++){
+											if (tree.getItem(indT).getData().toString().equals(zfs.getZserver().zProperties.get("serverIP").getValue())){
+												for (int indTreeVolFS=0;indTreeVolFS<tree.getItem(indT).getItemCount();indTreeVolFS++){
+													if (tree.getItem(indT).getItem(indTreeVolFS).getData().toString().compareTo(zfs.getZpool().zProperties.get("name").getValue()+"/"+zfs.getZvol().zProperties.get("name").getValue()) >0){
+														if (zfs.getError().size()>0){
+															updateItemTreeZfsList(false, zfs.getZpool().zProperties.get("name").getValue()+"/"+zfs.getZvol().zProperties.get("name").getValue(), tree.getItem(indT), null ,indTreeVolFS);
+														}else{
+															updateItemTreeZfsList(true, zfs.getZpool().zProperties.get("name").getValue()+"/"+zfs.getZvol().zProperties.get("name").getValue(), tree.getItem(indT), null ,indTreeVolFS);
+														}
+														indRoot=indT;
+														indItem=indTreeVolFS;
+														break;
+													}
+												}
+												if ( indItem==0){
+													int indTreeVolFS=tree.getItem(indT).getItemCount();
+													if (zfs.getError().size()>0){
+														updateItemTreeZfsList(false, zfs.getZpool().zProperties.get("name").getValue()+"/"+zfs.getZvol().zProperties.get("name").getValue(), tree.getItem(indT), null ,indTreeVolFS);
+													}else{
+														updateItemTreeZfsList(true, zfs.getZpool().zProperties.get("name").getValue()+"/"+zfs.getZvol().zProperties.get("name").getValue(), tree.getItem(indT), null ,indTreeVolFS);
+													}
+													indRoot=indT;
+													indItem=indTreeVolFS;
+												}
+												tree.layout();
+											}
+										}
+
+										log.debug("Create Vol ISCI "+zfs.getZvol().zProperties.get("type").getValue());
+										compositeTabVolConfig.layout();
+										wPB.close();
+
+										refreshCreateZfsVolFS();
+									}
+								}
+							});
+						}
+					});
+					thrCreateZFSVol.start();
+				}
+			}
+		});
+		compositeCreateVolFS.layout();
+	}
+
+	private void refreshIscsiSession(){
+
+
+		zfs.getIscsiListConfigVol(zfs.getZvol().zProperties.get("name").getValue());	
+		log.debug("refreshIscsiSesiont : "+zfs.getZiscsi().zProperties.get("sid").getMultivalues().size());
+
+
+
+		tableIscsiSession.removeAll();
+		for (int i=0;i<zfs.getZiscsi().zProperties.get("sid").getMultivalues().size();i++){
+			TableItem item = new TableItem(tableIscsiSession, SWT.NONE);
+			item.setText(0, zfs.getZiscsi().zProperties.get("sid").getMultivalues().get(i).toString());
+			item.setText(1, zfs.getZiscsi().zProperties.get("sessionIP").getMultivalues().get(i).toString());
+
+		}
+		String[] keysProp = (String[]) zfs.getZiscsi().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+			if ( "noupdateable".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())) {
+				for (int indLabel=0;indLabel<labelsFieldAddIscsi.size();indLabel++){
+					if ( labelsFieldAddIscsi.get(indLabel).getData().equals(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty()) ){
+						labelsFieldAddIscsi.get(indLabel).setText(zfs.getZiscsi().zProperties.get(keyProp).getValue());
+					}
+				}
+			}else{
+				if ( "freeentry".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())) {
+					for (int indText=0;indText<textsFieldAddIscsi.size();indText++){
+						if ( textsFieldAddIscsi.get(indText).getData().equals(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty()) ){
+							textsFieldAddIscsi.get(indText).setText(zfs.getZiscsi().zProperties.get(keyProp).getValue());
+						}
+					}
+
+				}else{
+
+					if ( "nofreeentry".equalsIgnoreCase(zfs.getZiscsi().zProperties.get(keyProp).getType())) {
+						for (int indCombo=0;indCombo<combosFieldAddIscsi.size();indCombo++){
+							if ( combosFieldAddIscsi.get(indCombo).getData().equals(zfs.getZiscsi().zProperties.get(keyProp).getNameProperty()) ){
+								combosFieldAddIscsi.get(indCombo).setText(zfs.getZiscsi().zProperties.get(keyProp).getValue());
+							}
+						}
+					}
+				}
+			}
+		}
+	}
+
+	private void refreshConfigSnapshot(){
+
+		zsnap = zfs;
+		zsnap.getZsnapshotConfig();
+		String[] keysProp = (String[]) zsnap.getZsnapshots().zSchedulerProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+			if ( "noupdateable".equalsIgnoreCase(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getType())) {
+				for (int indLabel=0;indLabel<labelsFieldSnapshots.size();indLabel++){
+					if ( labelsFieldSnapshots.get(indLabel).getData().equals(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+						labelsFieldSnapshots.get(indLabel).setText(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getValue());
+						log.debug("REFRESHConfig 1: ");
+					}
+				}
+			}else{
+				if ( "freeentry".equalsIgnoreCase(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getType())) {
+					for (int indText=0;indText<textsFieldSnapshots.size();indText++){
+						if ( textsFieldSnapshots.get(indText).getData().equals(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+							textsFieldSnapshots.get(indText).setText(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getValue());
+							log.debug("REFRESHConfig2 : ");
+						}
+					}
+
+				}else{
+
+					if ( "nofreeentry".equalsIgnoreCase(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getType())) {
+						for (int indCombo=0;indCombo<listsFieldSnaphots.size();indCombo++){
+							if ( listsFieldSnaphots.get(indCombo).getData().equals(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+								//listsFieldSnaphots.get(indCombo).setText(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getValue());
+								labelsFieldSnapshotsValue.get(indCombo).setText("Current values : "+zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getValue());
+								log.debug("REFRESHConfig3 : "+zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getValue());
+
+							}
+						}
+					}
+				}
+			}
+		}
+	}
+
+	private void refreshConfigReplica(){
+
+		//zsnap = zfs;
+		zfs.getZreplicaConfig();
+		String[] keysProp = (String[]) zfs.getZreplicas().zSchedulerProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+
+		for (int i = 0; i < keysProp.length; i++) {
+			keyProp = keysProp[i];
+			if ( "noupdateable".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType())) {
+				for (int indLabel=0;indLabel<labelsFieldReplica.size();indLabel++){
+					if ( labelsFieldReplica.get(indLabel).getData().equals(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+						labelsFieldReplica.get(indLabel).setText(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getValue());
+						log.debug("REFRESHConfig 1: ");
+					}
+				}
+			}else{
+				if ( "freeentry".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType())) {
+					for (int indText=0;indText<textsFieldReplica.size();indText++){
+						if ( textsFieldReplica.get(indText).getData().equals(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+							textsFieldReplica.get(indText).setText(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getValue());
+							log.debug("REFRESHConfig2 : ");
+						}
+					}
+
+				}else{
+
+					if ( "nofreeentry".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType())&& zfs.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue() !=null) {
+						for (int indCombo=0;indCombo<listsFieldReplica.size();indCombo++){
+							if ( listsFieldReplica.get(indCombo).getData().equals(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+								//listsFieldSnaphots.get(indCombo).setText(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getValue());
+								labelsFieldReplicaValue.get(indCombo).setText("Current values : "+zfs.getZreplicas().zSchedulerProperties.get(keyProp).getValue());
+								log.debug("REFRESHConfig3 : "+zfs.getZreplicas().zSchedulerProperties.get(keyProp).getValue());
+
+							}
+						}
+					}
+					if ( "nofreeentry".equalsIgnoreCase(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getType())&& zfs.getZreplicas().zSchedulerProperties.get(keyProp).getPermitValue() ==null) {
+						for (int indCombo=0;indCombo<combosFieldReplica.size();indCombo++){
+
+							if (keyProp.equalsIgnoreCase("server")){
+								for (int indLabel=0;indLabel<labelsFieldReplica.size();indLabel++){
+									if ( labelsFieldReplica.get(indLabel).getData().equals(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+										labelsFieldReplica.get(indLabel).setText(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getValue());
+										log.debug("REFRESHConfig 1: ");
+									}
+								}
+
+								if ( combosFieldReplica.get(indCombo).getData().equals(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+									combosFieldReplica.get(indCombo).removeAll();
+									String[] keysPropSrv = (String[]) zfs.getCacheSession().keySet().toArray(new String[0]);
+									Arrays.sort(keysPropSrv);
+									for (int cptSrv=0;cptSrv<keysPropSrv.length;cptSrv++){
+										String keyPropSrv=keysPropSrv[cptSrv];
+										combosFieldReplica.get(indCombo).add(keyPropSrv);
+									}
+									//listsFieldSnaphots.get(indCombo).setText(zsnap.getZsnapshots().zSchedulerProperties.get(keyProp).getValue());
+									//combosFieldReplica.get(indCombo).setText("Current values : "+zfs.getZreplicas().zSchedulerProperties.get(keyProp).getValue());
+									log.debug("REFRESHConfig3 : "+zfs.getZreplicas().zSchedulerProperties.get(keyProp).getValue());
+									combosFieldReplica.get(indCombo).setText(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getValue());
+								}
+							}else{
+								if ( combosFieldReplica.get(indCombo).getData().equals(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getNameProperty()) ){
+									combosFieldReplica.get(indCombo).setText(zfs.getZreplicas().zSchedulerProperties.get(keyProp).getValue());
+								}
+							}
+						}
+
+					}
+				}
+			}
+		}
+	}
+
+
+
+	private void refreshConfigVolume(){
+
+		String[] keysProp = (String[]) zfs.getZvol().zProperties.keySet().toArray(new String[0]);
+		Arrays.sort(keysProp);
+
+		if ( "snapshot".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue())) {
+			for (int i=0;i<keysProp.length;i++){
+				keyProp = keysProp[i];
+				for (int indLabel=0;indLabel<labelsField.size();indLabel++){
+					if ( labelsField.get(indLabel).getData().equals(zfs.getZvol().zProperties.get(keyProp).getNameProperty()) ){
+						labelsField.get(indLabel).setText(zfs.getZvol().zProperties.get(keyProp).getValue());
+					}
+				}
+			}
+		}else{
+			for (int i=0;i<keysProp.length;i++){
+				keyProp = keysProp[i];
+				if ( "noupdateable".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getType())) {
+					for (int indLabel=0;indLabel<labelsField.size();indLabel++){
+						if ( labelsField.get(indLabel).getData().equals(zfs.getZvol().zProperties.get(keyProp).getNameProperty())){
+							labelsField.get(indLabel).setText(zfs.getZvol().zProperties.get(keyProp).getValue());
+						}
+
+					}
+				}else{
+					if ( "freeentry".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getType())) {
+						for (int indText=0;indText<textsField.size();indText++){
+							if ( textsField.get(indText).getData().equals(zfs.getZvol().zProperties.get(keyProp).getNameProperty()) ){
+								textsField.get(indText).setText(zfs.getZvol().zProperties.get(keyProp).getValue());
+							}
+						}
+
+					}else{
+
+						if ( "nofreeentry".equalsIgnoreCase(zfs.getZvol().zProperties.get(keyProp).getType())) {
+							for (int indCombo=0;indCombo<combosField.size();indCombo++){
+								if ( combosField.get(indCombo).getData().equals(zfs.getZvol().zProperties.get(keyProp).getNameProperty()) ){
+									combosField.get(indCombo).setText(zfs.getZvol().zProperties.get(keyProp).getValue());
+								}
+							}
+						}
+					}
+				}
+			}
+			Button btnSaveChange = new Button(compositeConfig,SWT.WRAP|SWT.BORDER);
+			GridData gridDataBtnSaveChanges = new GridData(GridData.FILL, GridData.CENTER, true, false);
+			//gridDataChart.heightHint = 250;
+			//gridDataChart.horizontalSpan = 2;
+			btnSaveChange.setText("Save Changes");
+			btnSaveChange.setLayoutData(gridDataBtnSaveChanges);
+			Button btnDestroyVolFS = new Button(compositeConfig,SWT.WRAP|SWT.BORDER);
+			GridData gridDataBtnDestroyVolFS = new GridData(GridData.FILL, GridData.CENTER, true, false);
+			btnSaveChange.setEnabled(false);
+			//gridDataChart.heightHint = 250;
+			//gridDataChart.horizontalSpan = 2;
+			btnDestroyVolFS.setText("Delete");
+			btnDestroyVolFS.setLayoutData(gridDataBtnDestroyVolFS);
+			btnDestroyVolFS.addListener(SWT.Selection, new Listener() {
+
+				public void handleEvent(final Event event) {
+					log.debug("btnDestroyVolFS.addListener :"+zfs.getZvol().zProperties.get("name").getValue()+" "+zfs.getZvol().zProperties.get("type").getValue());
+					destroyVolFS();
+				}
+			});
+
+			guiTrt=new guiTrt();
+			//create Chart
+			if ( "volume".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue())) {
+				guiTrt.formatChartValue(zfs.getZvol().zProperties.get("volsize").getValue(), zfs.getZvol().zProperties.get("usedbydataset").getValue(), zfs.getZvol().zProperties.get("usedbysnapshots").getValue());	
+			}else{
+				if ( "filesystem".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue())) {
+					guiTrt.formatChartValue(zfs.getZvol().zProperties.get("available").getValue(), zfs.getZvol().zProperties.get("usedbydataset").getValue(), zfs.getZvol().zProperties.get("usedbysnapshots").getValue());
+				}
+			}
+
+			dataCharset.clear();
+			this.dataCharset.put("Used By Data : "+zfs.getZvol().zProperties.get("usedbydataset").getValue(), guiTrt.getZfsUsedByData()) ;
+			this.dataCharset.put("Used By Snapshots : "+zfs.getZvol().zProperties.get("usedbysnapshots").getValue(), guiTrt.getZfsUsedBySnapshots()) ;
+			this.dataCharset.put("Free : "+BigDecimal.valueOf(guiTrt.getZfsFree()).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()+guiTrt.getUnit(), guiTrt.getZfsFreePourcent()) ;
+			PieDataset dataset = guiTrt.createDataset(dataCharset);  
+			JFreeChart chartVolumeConfig = guiTrt.createChart(dataset, "Total Volume size : "+zfs.getZvol().zProperties.get("volsize").getValue());
+			if ( chartVolumeComposite != null){
+				if ( !chartVolumeComposite.isDisposed()){
+					chartVolumeComposite.dispose();
+				}	
+			}
+
+			//Create Grid for Chart
+			//gridDataChart = new GridData(GridData.FILL, GridData.CENTER, true, false);
+			gridDataChart = new GridData(SWT.FILL, SWT.FILL, true, true);
+			//gridDataChart.heightHint = 275;
+			//gridDataChart.heightHint =compositeConfig.
+			gridDataChart.horizontalSpan = 2;
+			//Create Composite for Chart
+			chartVolumeComposite= new ChartComposite(compositeConfig, SWT.BORDER, chartVolumeConfig, true); 
+			chartVolumeComposite.setLayoutData(gridDataChart);
+			chartVolumeComposite.layout();
+			compositeConfig.layout();
+		}
+
+	}
+
+	public void updateItemTreeZfsList(Boolean statusIscsi, String itemData,  TreeItem rootTree, String infoUsedSize, int indexTree){
+		TreeItem root;
+		if (indexTree ==-1){
+			root = new TreeItem(rootTree, SWT.None);
+		}else{
+			root = new TreeItem(rootTree,SWT.None, indexTree);
+		}
+		root.setText(itemData+" ("+infoUsedSize+")");
+
+
+		if (statusIscsi){
+			if ("filesystem".equals(zfs.getZvol().zProperties.get("type").getValue())){
+				root.setImage(imageFSOnline);
+			}else{
+				root.setImage(imageStorageOnline);	
+			}
+
+		}else{
+			if ("filesystem".equals(zfs.getZvol().zProperties.get("type").getValue())){
+				root.setImage(imageFSOffline);
+			}else{
+				root.setImage(imageStorageOffline);	
+			}
+
+		}
+		root.setData(itemData);	
+		//Set Object Zvol to empty
+		zfs.setZvol();	
+		zfs.setZiscsi();
+	}
+
+
+	public void actionClickTree(Event evt){
+		final TreeItem root = (TreeItem) evt.item;
+		strItemServer ="";
+		strItemZvolFS="";
+		countItem=0;
+		thrGetallZvol = new Thread(new Runnable() {
+
+			public void run() {
+				Display.getDefault().syncExec(new Runnable() {
+					public void run() {
+						wPB.open();
+
+					}
+				});
+
+
+				Display.getDefault().syncExec(new Runnable() {
+					public void run() {
+
+						if ( root.getParentItem() != null){
+
+							final TreeItem parentRoot = root.getParentItem();
+							if ( parentRoot.getParentItem() != null){
+								strItemServer=parentRoot.getParentItem().getData().toString();
+
+							}else{
+								strItemServer=root.getParentItem().getData().toString();
+
+							}
+
+							strItemZvolFS=root.getData().toString();
+							log.debug(strItemZvolFS);
+							countItem=root.getItemCount();
+							if (countItem <1){
+								root.clearAll(true);
+								root.setItemCount(0);
+							}
+						}
+					}
+				});
+				if (!strItemServer.equalsIgnoreCase("")){
+					zfs.getServer(strItemServer);
+					zfs.zfsGetAllVolume(strItemZvolFS);
+
+					if ( countItem <1 && !zfs.getZvol().zProperties.get("type").getValue().equalsIgnoreCase("snapshot")){
+						final List<Object> zlistSnapshots = zfs.zfsListSnapshotsByVolFS(strItemZvolFS);
+
+						Display.getDefault().syncExec(new Runnable() {
+							public void run() {
+
+								for (int i = 0; i < zlistSnapshots.size(); i++) {
+									TreeItem item = new TreeItem(root, 0);
+									item.setText(zlistSnapshots.get(i).toString());
+									item.setData(zlistSnapshots.get(i).toString());
+									if ( zfs.getIscsiListConfigVol(zlistSnapshots.get(i).toString()) && ! "".equalsIgnoreCase(zfs.getZiscsi().zProperties.get("tid").getValue())){
+										item.setImage(imageSnapshotOnline);
+									}else{
+										item.setImage(imageSnapshotOffline);
+									}
+
+								}
+							}
+						});
+					}
+
+					Display.getDefault().syncExec(new Runnable(){
+						public void run(){
+							if ( !tbtmConfig.isDisposed()){
+								tbtmConfig.dispose();
+								tabFolderConfig.layout();
+							}
+							createTabItemVolConfig();
+							refreshConfigVolume();
+
+
+							if (! zfs.getZvol().zProperties.get("type").getValue().equalsIgnoreCase("snapshot")){
+								if (tbtmSnapshot.isDisposed()){
+									createTabItemSnapshot();
+								}
+								refreshConfigSnapshot();
+
+							}else{
+								if ( !tbtmSnapshot.isDisposed()){
+									tbtmSnapshot.dispose();	
+								}
+
+							}
+							tabFolderConfig.setSelection(tbtmConfig);
+							refreshIscsiSession();
+							refreshConfigReplica();
+							tabFolderConfig.layout();
+							wPB.close();
+							menuTreeZFS();
+							tree.setMenu(treeZFSMenu);
+
+
+						}
+					});
+
+				}
+			}
+		});
+
+		thrGetallZvol.start();
+	}
+
+
+	public void menuTreeZFS(){
+		if (treeZFSMenu != null && !treeZFSMenu.isDisposed()){
+			treeZFSMenu.dispose();
+		}
+		treeZFSMenu = new Menu(shell, SWT.POP_UP);
+		MenuItem refreshZFSMenu = new MenuItem(treeZFSMenu, SWT.PUSH);
+		refreshZFSMenu.setText("Refresh"); 
+		refreshZFSMenu.addListener(SWT.Selection, new Listener() {
+			public void handleEvent(final Event event) {
+
+				tree.getSelection()[0].removeAll();
+				wPB = new guiProgress(shell.getDisplay(), shell.getLocation().x, shell.getLocation().y);
+				TreeItem itemSelected = tree.getSelection()[0];
+				while (itemSelected.getParentItem()!=null){
+					itemSelected=itemSelected.getParentItem();
+				}
+				itemSelected.removeAll();
+				refreshTreeZFSList(itemSelected);
+
+
+			}
+		});
+
+		if ("volume".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue())||
+				"filesystem".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue())){
+			MenuItem snapshotVolFS = new MenuItem(treeZFSMenu, SWT.PUSH);
+			snapshotVolFS.setText("Launch Snapshoting"); 
+			snapshotVolFS.addListener(SWT.Selection, new Listener() {
+				public void handleEvent(final Event event) {
+					zfs.zfsSnapshots();
+					String[] keysPropError = zfs.getError().keySet().toArray(new String[0]);
+
+					Arrays.sort(keysPropError);
+					String textBox = "";
+					for (int i = 0; i < keysPropError.length; i++) {
+						String keyPropError = keysPropError[i];
+						textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+					}
+					if (keysPropError.length>0){
+						MessageBox messageBoxError = new MessageBox(shell, SWT.DIALOG_TRIM);
+						messageBoxError.setText("Warning");
+						messageBoxError.setMessage(textBox);
+						messageBoxError.open();
+					}
+				}
+			});	
+			
+			MenuItem replicaVol = new MenuItem(treeZFSMenu, SWT.PUSH);
+			replicaVol.setText("Launch Replication"); 
+			replicaVol.addListener(SWT.Selection, new Listener() {
+				public void handleEvent(final Event event) {
+					zfs.zfsReplicas();
+					String[] keysPropError = zfs.getError().keySet().toArray(new String[0]);
+
+					Arrays.sort(keysPropError);
+					String textBox = "";
+					for (int i = 0; i < keysPropError.length; i++) {
+						String keyPropError = keysPropError[i];
+						textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+					}
+					if (keysPropError.length>0){
+						MessageBox messageBoxError = new MessageBox(shell, SWT.DIALOG_TRIM);
+						messageBoxError.setText("Warning");
+						messageBoxError.setMessage(textBox);
+						messageBoxError.open();
+					}
+				}
+			});	
+		}
+
+		if ("volume".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue())||
+				"filesystem".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue())||
+				"snapshot".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue())){
+
+			MenuItem removeVolFS = new MenuItem(treeZFSMenu, SWT.PUSH);
+			removeVolFS.setText("Remove "+zfs.getZvol().zProperties.get("name").getValue()); 
+			removeVolFS.addListener(SWT.Selection, new Listener() {
+				public void handleEvent(final Event event) {
+					destroyVolFS();
+				}
+			});
+		}
+		if("snapshot".equalsIgnoreCase(zfs.getZvol().zProperties.get("type").getValue())){
+			MenuItem cloneSnapshpt = new MenuItem(treeZFSMenu, SWT.PUSH);
+			cloneSnapshpt.setText("Clone "+zfs.getZvol().zProperties.get("name").getValue()); 
+			cloneSnapshpt.addListener(SWT.Selection, new Listener() {
+				public void handleEvent(final Event event) {
+					zfs.zfsClone();
+					if ( zfs.getError().size()>0){
+
+					}else{
+						int indRoot=0;
+						int indItem=0;
+						if ("filesystem".equals(zfs.getZvol().zProperties.get("type").getValue())){
+							infoUsedSize=zfs.getZvol().zProperties.get("usedbydataset").getValue()+"/"+zfs.getZvol().zProperties.get("available").getValue();
+						}else{
+							infoUsedSize=zfs.getZvol().zProperties.get("used").getValue()+" / "+zfs.getZvol().zProperties.get("volsize").getValue();
+						}
+						for (int indT=0;indT<tree.getItemCount();indT++){
+							if (tree.getItem(indT).getData().toString().equals(zfs.getZserver().zProperties.get("serverIP").getValue())){
+								for (int indTreeVolFS=0;indTreeVolFS<tree.getItem(indT).getItemCount();indTreeVolFS++){
+									if (tree.getItem(indT).getItem(indTreeVolFS).getData().toString().compareTo(zfs.getZvol().zProperties.get("name").getValue()) >0){
+										if (zfs.getError().size()>0){
+											updateItemTreeZfsList(false,zfs.getZvol().zProperties.get("name").getValue(), tree.getItem(indT), infoUsedSize ,indTreeVolFS);
+										}else{
+											updateItemTreeZfsList(true, zfs.getZvol().zProperties.get("name").getValue(), tree.getItem(indT), infoUsedSize ,indTreeVolFS);
+										}
+										indRoot=indT;
+										indItem=indTreeVolFS;
+										break;
+									}
+								}
+								if ( indItem==0){
+									int indTreeVolFS=tree.getItem(indT).getItemCount();
+									if (zfs.getError().size()>0){
+										updateItemTreeZfsList(false,zfs.getZvol().zProperties.get("name").getValue(), tree.getItem(indT), infoUsedSize ,indTreeVolFS);
+									}else{
+										updateItemTreeZfsList(true,zfs.getZvol().zProperties.get("name").getValue(), tree.getItem(indT), infoUsedSize ,indTreeVolFS);
+									}
+									indRoot=indT;
+									indItem=indTreeVolFS;
+								}
+								tree.layout();
+							}
+						}
+					}
+				}
+			});
+		}
+
+	}
+
+	public void destroyVolFS(){
+		if ( !"".equals(zfs.getZvol().zProperties.get("name").getValue())){
+			MessageBox messageBoxConfirm = new MessageBox(shell, SWT.YES|SWT.NO);
+			messageBoxConfirm.setText("Warning");
+			String textBoxConfirm="Remove : "+zfs.getZvol().zProperties.get("name").getValue()+" ?";
+			messageBoxConfirm.setMessage(textBoxConfirm);
+			int answerIDConfirm= messageBoxConfirm.open();
+			if (answerIDConfirm == SWT.YES){
+				if ("filesystem".equals(zfs.getZvol().zProperties.get("type").getValue())){
+					if ("yes".equals(zfs.getZvol().zProperties.get("mounted").getValue()) ){
+						MessageBox messageBoxInfo = new MessageBox(shell, SWT.YES|SWT.NO);
+						messageBoxInfo.setText("Warning");
+						String textBox=zfs.getZvol().zProperties.get("name").getValue()+" is mounted\n Do you want umount it ?";
+						messageBoxInfo.setMessage(textBox);
+						int answerID= messageBoxInfo.open();
+						if (answerID == SWT.YES){
+							zfs.zfsUmountFS();
+							String[] keysPropError = zfs.getError().keySet().toArray(new String[0]);
+							//String[] keysProp = (String[]) zfs.getZserver().zProperties.keySet().toArray(new String[0]);
+							Arrays.sort(keysPropError);
+							textBox = "";
+							for (int i = 0; i < keysPropError.length; i++) {
+								String keyPropError = keysPropError[i];
+								textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+							}
+							if (keysPropError.length>0){
+								MessageBox messageBoxError = new MessageBox(shell, SWT.DIALOG_TRIM);
+								messageBoxError.setText("Warning");
+								messageBoxError.setMessage(textBox);
+								messageBoxError.open();
+							}else{
+								zfs.zfsDestroyVolFS();
+								keysPropError = zfs.getError().keySet().toArray(new String[0]);
+
+								Arrays.sort(keysPropError);
+								textBox = "";
+								for (int i = 0; i < keysPropError.length; i++) {
+									String keyPropError = keysPropError[i];
+									textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+								}
+								if (keysPropError.length>0){
+									MessageBox messageBoxError = new MessageBox(shell, SWT.DIALOG_TRIM);
+									messageBoxError.setText("Warning");
+									messageBoxError.setMessage(textBox);
+									messageBoxError.open();
+								}else{
+									tree.getSelection()[0].clearAll(true);
+									tree.getSelection()[0].dispose();
+									tree.layout();
+									zfs.setZvol();
+									if ( !tbtmConfig.isDisposed()){
+										tbtmConfig.dispose();
+										tabFolderConfig.layout();
+									}
+									createTabItemVolConfig();
+									refreshConfigVolume();
+									tabFolderConfig.layout();
+
+								}
+							}
+						}
+					}else{
+						zfs.zfsDestroyVolFS();
+						String[] keysPropError = zfs.getError().keySet().toArray(new String[0]);
+
+						Arrays.sort(keysPropError);
+						String textBox = "";
+						for (int i = 0; i < keysPropError.length; i++) {
+							String keyPropError = keysPropError[i];
+							textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+						}
+						if (keysPropError.length>0){
+							MessageBox messageBoxError = new MessageBox(shell, SWT.DIALOG_TRIM);
+							messageBoxError.setText("Warning");
+							messageBoxError.setMessage(textBox);
+							messageBoxError.open();
+						}else{
+							tree.getSelection()[0].clearAll(true);
+							tree.getSelection()[0].dispose();
+							tree.layout();
+							zfs.setZvol();
+							if ( !tbtmConfig.isDisposed()){
+								tbtmConfig.dispose();
+								tabFolderConfig.layout();
+							}
+							createTabItemVolConfig();
+							refreshConfigVolume();
+							tabFolderConfig.layout();
+
+							if (! zfs.getZvol().zProperties.get("type").getValue().equalsIgnoreCase("snapshot")){
+								//refreshInfoSnapshot();
+								refreshConfigSnapshot();
+							}
+							tabFolderConfig.setSelection(tbtmConfig);
+							refreshIscsiSession();
+						}
+					}
+				}else{
+					if ( "volume".equals(zfs.getZvol().zProperties.get("type").getValue())){
+						zfs.zfsDelIscsi();
+						String[] keysPropError = zfs.getError().keySet().toArray(new String[0]);
+
+						Arrays.sort(keysPropError);
+						String textBox = "";
+						for (int i = 0; i < keysPropError.length; i++) {
+							String keyPropError = keysPropError[i];
+							textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+						}
+						if (keysPropError.length>0){
+							MessageBox messageBoxError = new MessageBox(shell, SWT.DIALOG_TRIM);
+							messageBoxError.setText("Warning");
+							messageBoxError.setMessage(textBox);
+							messageBoxError.open();
+						}else{
+							zfs.zfsDestroyVolFS();
+							keysPropError = zfs.getError().keySet().toArray(new String[0]);
+
+							Arrays.sort(keysPropError);
+							textBox = "";
+							for (int i = 0; i < keysPropError.length; i++) {
+								String keyPropError = keysPropError[i];
+								textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+							}
+							if (keysPropError.length>0){
+								MessageBox messageBoxError = new MessageBox(shell, SWT.DIALOG_TRIM);
+								messageBoxError.setText("Warning");
+								messageBoxError.setMessage(textBox);
+								messageBoxError.open();
+							}else{
+								zfs.zfsDisableSnapshots();
+								tree.getSelection()[0].clearAll(true);
+								tree.getSelection()[0].dispose();
+								tree.layout();
+								zfs.setZvol();
+								if ( !tbtmConfig.isDisposed()){
+									tbtmConfig.dispose();
+									tabFolderConfig.layout();
+								}
+								createTabItemVolConfig();
+								refreshConfigVolume();
+								tabFolderConfig.layout();
+
+								if (! zfs.getZvol().zProperties.get("type").getValue().equalsIgnoreCase("snapshot")){
+									refreshConfigSnapshot();
+								}
+								tabFolderConfig.setSelection(tbtmConfig);
+								refreshIscsiSession();
+							}
+						}
+					}else{
+						if ( "snapshot".equals(zfs.getZvol().zProperties.get("type").getValue())){
+							zfs.zfsDelIscsi();
+							String[] keysPropError = zfs.getError().keySet().toArray(new String[0]);
+
+							Arrays.sort(keysPropError);
+							String textBox = "";
+							for (int i = 0; i < keysPropError.length; i++) {
+								String keyPropError = keysPropError[i];
+								textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+							}
+							if (keysPropError.length>0){
+								MessageBox messageBoxError = new MessageBox(shell, SWT.DIALOG_TRIM);
+								messageBoxError.setText("Warning");
+								messageBoxError.setMessage(textBox);
+								messageBoxError.open();
+							}else{
+								zfs.zfsDestroyVolFS();
+								keysPropError = zfs.getError().keySet().toArray(new String[0]);
+
+								Arrays.sort(keysPropError);
+								textBox = "";
+								for (int i = 0; i < keysPropError.length; i++) {
+									String keyPropError = keysPropError[i];
+									textBox = textBox +zfs.getError().get(keyPropError)+".\n";
+								}
+								if (keysPropError.length>0){
+									MessageBox messageBoxError = new MessageBox(shell, SWT.DIALOG_TRIM);
+									messageBoxError.setText("Warning");
+									messageBoxError.setMessage(textBox);
+									messageBoxError.open();
+								}else{
+									zfs.zfsDisableSnapshots();
+									tree.getSelection()[0].clearAll(true);
+									tree.getSelection()[0].dispose();
+									tree.layout();
+									zfs.setZvol();
+									if ( !tbtmConfig.isDisposed()){
+										tbtmConfig.dispose();
+										tabFolderConfig.layout();
+									}
+									createTabItemVolConfig();
+									refreshConfigVolume();
+									tabFolderConfig.layout();
+
+									if (! zfs.getZvol().zProperties.get("type").getValue().equalsIgnoreCase("snapshot")){
+										refreshConfigSnapshot();
+									}
+									tabFolderConfig.setSelection(tbtmConfig);
+									refreshIscsiSession();
+								}
+							}
+						}
+
+
+					}
+
+				}	
+			}
+
+
+		}
+	}
+
+
+
+}

Property changes on: src/gZFS/gui.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/main.java
===================================================================
--- src/gZFS/main.java	(revision 0)
+++ src/gZFS/main.java	(revision 14)
@@ -0,0 +1,38 @@
+package gZFS;
+
+import org.apache.log4j.Logger;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.TabFolder;
+import org.eclipse.swt.widgets.TabItem;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeItem;
+import org.eclipse.jface.layout.TreeColumnLayout;
+
+
+public class main {
+
+	/**
+	 * Launch the application.
+	 * @param args
+	 */
+	Logger log = Logger.getLogger(getClass().getPackage().getName()+" "+getClass().getCanonicalName());
+	
+	
+	
+	public static void main(String[] args) {
+		gui gui = new gui();
+		gui.main(null);
+		
+	}
+
+}

Property changes on: src/gZFS/main.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/zdisk.java
===================================================================
--- src/gZFS/zdisk.java	(revision 0)
+++ src/gZFS/zdisk.java	(revision 14)
@@ -0,0 +1,208 @@
+package gZFS;
+
+import java.util.Hashtable;
+
+public class zdisk {
+
+	public Hashtable<String,zProperties> zProperties = new Hashtable<String, zProperties>();
+	//private zProperties zProperty = new zProperties();
+	zdisk(){
+
+		Hashtable<Object,Object> permitValuezName = new Hashtable<Object,Object>();
+		permitValuezName.clear();
+		zProperties zPropertyPoolname = new zProperties();
+		zPropertyPoolname.setNameProperty("poolname");
+		zPropertyPoolname.setLabelProperty("Poolname");
+		zPropertyPoolname.setType("noupdateable");
+		zPropertyPoolname.setValue("");
+		zPropertyPoolname.setPermitValue(null);
+		//zPropertyPoolname.setPropertyOf("volandfs");
+		zProperties.put("poolname", zPropertyPoolname);
+		
+		Hashtable<Object,Object> permitValueDevid = new Hashtable<Object,Object>();
+		permitValueDevid.clear();
+		zProperties zPropertyDevid = new zProperties();
+		zPropertyDevid.setNameProperty("devid");
+		zPropertyDevid.setLabelProperty("Devid");
+		zPropertyDevid.setType("noupdateable");
+		zPropertyDevid.setValue("");
+		zPropertyDevid.setPermitValue(null);
+		//zPropertyDevid.setPropertyOf("volandfs");
+		zProperties.put("devid", zPropertyDevid);
+		
+		Hashtable<Object,Object> permitValuePath = new Hashtable<Object,Object>();
+		permitValuePath.clear();
+		zProperties zPropertyPath = new zProperties();
+		zPropertyPath.setNameProperty("path");
+		zPropertyPath.setLabelProperty("Path");
+		zPropertyPath.setType("noupdateable");
+		zPropertyPath.setValue("");
+		zPropertyPath.setPermitValue(null);
+		zProperties.put("path", zPropertyPath);
+		
+		Hashtable<Object,Object> permitValueVendor = new Hashtable<Object,Object>();
+		permitValueVendor.clear();
+		zProperties zPropertyVendor = new zProperties();
+		zPropertyVendor.setNameProperty("vendor");
+		zPropertyVendor.setLabelProperty("Vendor");
+		zPropertyVendor.setType("noupdateable");
+		zPropertyVendor.setValue("");
+		zPropertyVendor.setPermitValue(null);
+		//zPropertyVendor.setPropertyOf("volandfs");
+		zProperties.put("vendor", zPropertyVendor);
+		
+		Hashtable<Object,Object> permitValueProduct = new Hashtable<Object,Object>();
+		permitValueProduct.clear();
+		zProperties zPropertyProduct = new zProperties();
+		zPropertyProduct.setNameProperty("product");
+		zPropertyProduct.setLabelProperty("Product");
+		zPropertyProduct.setType("noupdateable");
+		zPropertyProduct.setValue("");
+		zPropertyProduct.setPermitValue(null);
+		//zPropertyProduct.setPropertyOf("volandfs");
+		zProperties.put("product", zPropertyProduct);
+		
+		Hashtable<Object,Object> permitValueRevision = new Hashtable<Object,Object>();
+		permitValueRevision.clear();
+		zProperties zPropertyRevision = new zProperties();
+		zPropertyRevision.setNameProperty("revision");
+		zPropertyRevision.setLabelProperty("Revision");
+		zPropertyRevision.setType("noupdateable");
+		zPropertyRevision.setValue("");
+		zPropertyRevision.setPermitValue(null);
+		//zPropertyRevision.setPropertyOf("volandfs");
+		zProperties.put("revision", zPropertyRevision);
+		
+		Hashtable<Object,Object> permitValueUserCapacity = new Hashtable<Object,Object>();
+		permitValueUserCapacity.clear();
+		zProperties zPropertyUserCapacity = new zProperties();
+		zPropertyUserCapacity.setNameProperty("usercapacity");
+		zPropertyUserCapacity.setLabelProperty("UserCapacity");
+		zPropertyUserCapacity.setType("noupdateable");
+		zPropertyUserCapacity.setValue("");
+		zPropertyUserCapacity.setPermitValue(null);
+		//zPropertyUserCapacity.setPropertyOf("volandfs");
+		zProperties.put("usercapacity", zPropertyUserCapacity);
+		
+		Hashtable<Object,Object> permitValueLogicalblocksize = new Hashtable<Object,Object>();
+		permitValueLogicalblocksize.clear();
+		zProperties zPropertyLogicalblocksize = new zProperties();
+		zPropertyLogicalblocksize.setNameProperty("logicalblocksize");
+		zPropertyLogicalblocksize.setLabelProperty("Logicalblocksize");
+		zPropertyLogicalblocksize.setType("noupdateable");
+		zPropertyLogicalblocksize.setValue("");
+		zPropertyLogicalblocksize.setPermitValue(null);
+		//zPropertyLogicalblocksize.setPropertyOf("volandfs");
+		zProperties.put("logicalblocksize", zPropertyLogicalblocksize);
+		
+		Hashtable<Object,Object> permitValueLogicalUnitid = new Hashtable<Object,Object>();
+		permitValueLogicalUnitid.clear();
+		zProperties zPropertyLogicalUnitid = new zProperties();
+		zPropertyLogicalUnitid.setNameProperty("logicalunitid");
+		zPropertyLogicalUnitid.setLabelProperty("LogicalUnitid");
+		zPropertyLogicalUnitid.setType("noupdateable");
+		zPropertyLogicalUnitid.setValue("");
+		zPropertyLogicalUnitid.setPermitValue(null);
+		//zPropertyLogicalUnitid.setPropertyOf("volandfs");
+		zProperties.put("logicalunitid", zPropertyLogicalUnitid);
+		
+		Hashtable<Object,Object> permitValueSerialnumber = new Hashtable<Object,Object>();
+		permitValueSerialnumber.clear();
+		zProperties zPropertySerialnumber = new zProperties();
+		zPropertySerialnumber.setNameProperty("serialnumber");
+		zPropertySerialnumber.setLabelProperty("Serialnumber");
+		zPropertySerialnumber.setType("noupdateable");
+		zPropertySerialnumber.setValue("");
+		zPropertySerialnumber.setPermitValue(null);
+		//zPropertySerialnumber.setPropertyOf("volandfs");
+		zProperties.put("serialnumber", zPropertySerialnumber);
+		
+		Hashtable<Object,Object> permitValueDevicetype = new Hashtable<Object,Object>();
+		permitValueDevicetype.clear();
+		zProperties zPropertyDevicetype = new zProperties();
+		zPropertyDevicetype.setNameProperty("devicetype");
+		zPropertyDevicetype.setLabelProperty("Devicetype");
+		zPropertyDevicetype.setType("noupdateable");
+		zPropertyDevicetype.setValue("");
+		zPropertyDevicetype.setPermitValue(null);
+		//zPropertyDevicetype.setPropertyOf("volandfs");
+		zProperties.put("devicetype", zPropertyDevicetype);
+		
+		Hashtable<Object,Object> permitValueTransportprotocol = new Hashtable<Object,Object>();
+		permitValueTransportprotocol.clear();
+		zProperties zPropertyTransportprotocol = new zProperties();
+		zPropertyTransportprotocol.setNameProperty("transportprotocol");
+		zPropertyTransportprotocol.setLabelProperty("Transportprotocol");
+		zPropertyTransportprotocol.setType("noupdateable");
+		zPropertyTransportprotocol.setValue("");
+		zPropertyTransportprotocol.setPermitValue(null);
+		//zPropertyTransportprotocol.setPropertyOf("volandfs");
+		zProperties.put("transportprotocol", zPropertyTransportprotocol);
+		
+		Hashtable<Object,Object> permitValueSMARTHealthStatus = new Hashtable<Object,Object>();
+		permitValueSMARTHealthStatus.clear();
+		zProperties zPropertySMARTHealthStatus = new zProperties();
+		zPropertySMARTHealthStatus.setNameProperty("smarthealthstatus");
+		zPropertySMARTHealthStatus.setLabelProperty("SMARTHealthStatus");
+		zPropertySMARTHealthStatus.setType("noupdateable");
+		zPropertySMARTHealthStatus.setValue("");
+		zPropertySMARTHealthStatus.setPermitValue(null);
+		//zPropertySMARTHealthStatus.setPropertyOf("volandfs");
+		zProperties.put("smarthealthstatus", zPropertySMARTHealthStatus);
+		
+		Hashtable<Object,Object> permitValueErrorRead = new Hashtable<Object,Object>();
+		permitValueErrorRead.clear();
+		zProperties zPropertyErrorRead = new zProperties();
+		zPropertyErrorRead.setNameProperty("errorread");
+		zPropertyErrorRead.setLabelProperty("ErrorRead");
+		zPropertyErrorRead.setType("noupdateable");
+		zPropertyErrorRead.setValue("");
+		zPropertyErrorRead.setPermitValue(null);
+		//zPropertyErrorRead.setPropertyOf("volandfs");
+		zProperties.put("errorread", zPropertyErrorRead);
+		
+		Hashtable<Object,Object> permitValueErrorWrite = new Hashtable<Object,Object>();
+		permitValueErrorWrite.clear();
+		zProperties zPropertyErrorWrite = new zProperties();
+		zPropertyErrorWrite.setNameProperty("errorwrite");
+		zPropertyErrorWrite.setLabelProperty("ErrorWrite");
+		zPropertyErrorWrite.setType("noupdateable");
+		zPropertyErrorWrite.setValue("");
+		zPropertyErrorWrite.setPermitValue(null);
+		//zPropertyErrorWrite.setPropertyOf("volandfs");
+		zProperties.put("errorwrite", zPropertyErrorWrite);
+		
+		Hashtable<Object,Object> permitValueErrorChecksum = new Hashtable<Object,Object>();
+		permitValueErrorChecksum.clear();
+		zProperties zPropertyErrorChecksum = new zProperties();
+		zPropertyErrorChecksum.setNameProperty("errorchecksum");
+		zPropertyErrorChecksum.setLabelProperty("ErrorChecksum");
+		zPropertyErrorChecksum.setType("noupdateable");
+		zPropertyErrorChecksum.setValue("");
+		zPropertyErrorChecksum.setPermitValue(null);
+		//zPropertyErrorChecksum.setPropertyOf("volandfs");
+		zProperties.put("errorchecksum", zPropertyErrorChecksum);
+		
+		Hashtable<Object,Object> permitValueRaidID = new Hashtable<Object,Object>();
+		permitValueRaidID.clear();
+		zProperties zPropertyRaidID = new zProperties();
+		zPropertyRaidID.setNameProperty("raidid");
+		zPropertyRaidID.setLabelProperty("RaidID");
+		zPropertyRaidID.setType("noupdateable");
+		zPropertyRaidID.setValue("");
+		zPropertyRaidID.setPermitValue(null);
+		//zPropertyzRaidID.setPropertyOf("volandfs");
+		zProperties.put("raidid", zPropertyRaidID);
+		
+		Hashtable<Object,Object> permitValueRaidType = new Hashtable<Object,Object>();
+		permitValueRaidType.clear();
+		zProperties zPropertyRaidType = new zProperties();
+		zPropertyRaidType.setNameProperty("raidtype");
+		zPropertyRaidType.setLabelProperty("RaidType");
+		zPropertyRaidType.setType("noupdateable");
+		zPropertyRaidType.setValue("");
+		zPropertyRaidType.setPermitValue(null);
+		//zPropertyzRaidType.setPropertyOf("volandfs");
+		zProperties.put("raidtype", zPropertyRaidType);
+	}
+}

Property changes on: src/gZFS/zdisk.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/zProperties.java
===================================================================
--- src/gZFS/zProperties.java	(revision 0)
+++ src/gZFS/zProperties.java	(revision 14)
@@ -0,0 +1,105 @@
+package gZFS;
+
+import java.util.ArrayList;
+import java.util.Hashtable;
+import java.util.List;
+
+import org.apache.log4j.Logger;
+
+public class zProperties {
+	private Logger log = Logger.getLogger(getClass().getPackage().getName()+" "+getClass().getCanonicalName());
+	private String value;
+	private List<Object> multivalues;
+	private String type;
+	private String nameProperty;
+	private String labelProperty;
+	private String propertyOf;
+	private Hashtable<Object, Object> permitValue = new Hashtable<Object, Object>();
+	Hashtable<String,Object> property = new Hashtable<String, Object>();
+	/**
+	 * @return the value
+	 */
+	public String getValue() {
+		return value;
+	}
+	/**
+	 * @param value the value to set
+	 */
+	public void setValue(String value) {
+		this.value = value;
+	}
+	/**
+	 * @return the type
+	 */
+	public String getType() {
+		return type;
+	}
+	/**
+	 * @param type the type to set
+	 */
+	public void setType(String type) {
+		this.type = type;
+	}
+	/**
+	 * @return the nameProperty
+	 */
+	public String getNameProperty() {
+		return nameProperty;
+	}
+	/**
+	 * @param nameProperty the nameProperty to set
+	 */
+	public void setNameProperty(String nameProperty) {
+		this.nameProperty = nameProperty;
+	}
+	/**
+	 * @return the permitValue
+	 */
+	public Hashtable<Object, Object> getPermitValue() {
+		return permitValue;
+	}
+	/**
+	 * @param permitValue the permitValue to set
+	 */
+	public void setPermitValue(Hashtable<Object, Object> permitValue) {
+		this.permitValue = permitValue;
+	}
+	/**
+	 * @return the labelProperty
+	 */
+	public String getLabelProperty() {
+		return labelProperty;
+	}
+	/**
+	 * @param labelProperty the labelProperty to set
+	 */
+	public void setLabelProperty(String labelProperty) {
+		this.labelProperty = labelProperty;
+	}
+	/**
+	 * @return the multivalues
+	 */
+	public List<Object> getMultivalues() {
+		return multivalues;
+	}
+	/**
+	 * @param multivalues the multivalues to set
+	 */
+	public void setMultivalues(List<Object> multivalues) {
+		this.multivalues = multivalues;
+	}
+	/**
+	 * @return the propertyOf
+	 */
+	public String getPropertyOf() {
+		return propertyOf;
+	}
+	/**
+	 * @param propertyOf the propertyOf to set
+	 */
+	public void setPropertyOf(String propertyOf) {
+		this.propertyOf = propertyOf;
+	}
+	
+	
+}

Property changes on: src/gZFS/zProperties.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/zvol.java
===================================================================
--- src/gZFS/zvol.java	(revision 0)
+++ src/gZFS/zvol.java	(revision 14)
@@ -0,0 +1,497 @@
+package gZFS;
+
+import java.util.ArrayList;
+import java.util.Hashtable;
+import java.util.List;
+
+public class zvol {
+
+	public Hashtable<String,zProperties> zProperties = new Hashtable<String, zProperties>();
+	//private zProperties zProperty = new zProperties();
+	zvol(){
+
+		Hashtable<Object,Object> permitValueNameVolFS = new Hashtable<Object,Object>();
+		permitValueNameVolFS.clear();
+		zProperties zPropertyNameVolFS = new zProperties();
+		zPropertyNameVolFS.setNameProperty("name");
+		zPropertyNameVolFS.setLabelProperty("Name");
+		zPropertyNameVolFS.setType("noupdateable");
+		zPropertyNameVolFS.setValue("");
+		zPropertyNameVolFS.setPermitValue(null);
+		zPropertyNameVolFS.setPropertyOf("volandfs");
+		zProperties.put("name", zPropertyNameVolFS);
+
+		Hashtable<Object,Object> permitValueType = new Hashtable<Object,Object>();
+		permitValueType.clear();
+		zProperties zPropertyType = new zProperties();
+		zPropertyType.setNameProperty("type");
+		zPropertyType.setLabelProperty("Type");
+		zPropertyType.setType("noupdateable");
+		zPropertyType.setValue("");
+		permitValueType.put("volume","volume");
+		permitValueType.put("filesystem","filesystem");
+		zPropertyType.setPermitValue(permitValueType);
+		zPropertyType.setPropertyOf("volandfs");
+		zProperties.put("type", zPropertyType);
+
+		Hashtable<Object,Object> permitValueDate = new Hashtable<Object,Object>();
+		zProperties zPropertyDate = new zProperties();
+		permitValueDate.clear();
+		zPropertyDate.setNameProperty("creation");
+		zPropertyDate.setLabelProperty("Creation Date");
+		zPropertyDate.setType("noupdateable");
+		zPropertyDate.setValue("");
+		zPropertyDate.setPermitValue(null);
+		zPropertyDate.setPropertyOf("volandfs");
+		zProperties.put("creation", zPropertyDate);
+
+		Hashtable<Object,Object> permitValueUsed = new Hashtable<Object,Object>();
+		zProperties zPropertyUsed = new zProperties();
+		permitValueUsed.clear();
+		zPropertyUsed.setNameProperty("used");
+		zPropertyUsed.setLabelProperty("Used");
+		zPropertyUsed.setType("noupdateable");
+		zPropertyUsed.setValue("");
+		zPropertyUsed.setPermitValue(null);
+		zPropertyUsed.setPropertyOf("volandfs");
+		zProperties.put("used", zPropertyUsed);
+		
+		Hashtable<Object,Object> permitValueAvailable = new Hashtable<Object,Object>();
+		zProperties zPropertyAvailable = new zProperties();
+		permitValueAvailable.clear();
+		zPropertyAvailable.setNameProperty("available");
+		zPropertyAvailable.setLabelProperty("Available");
+		zPropertyAvailable.setType("noupdateable");
+		zPropertyAvailable.setValue("");
+		zPropertyAvailable.setPermitValue(null);
+		zPropertyAvailable.setPropertyOf("fs");
+		zProperties.put("available", zPropertyAvailable);
+
+		Hashtable<Object,Object> permitValueCompressRatio = new Hashtable<Object,Object>();
+		zProperties zPropertyCompressRatio = new zProperties();
+		permitValueCompressRatio.clear();
+		zPropertyCompressRatio.setNameProperty("compressratio");
+		zPropertyCompressRatio.setLabelProperty("Compression Ratio");
+		zPropertyCompressRatio.setType("noupdateable");
+		zPropertyCompressRatio.setValue("");
+		zPropertyCompressRatio.setPermitValue(null);
+		zPropertyCompressRatio.setPropertyOf("volandfs");
+		zProperties.put("compressratio", zPropertyCompressRatio);
+
+		Hashtable<Object,Object> permitValueSize = new Hashtable<Object,Object>();
+		zProperties zPropertySize = new zProperties();
+		permitValueSize.clear();
+		zPropertySize.setNameProperty("volsize");
+		zPropertySize.setLabelProperty("Volume Size");
+		zPropertySize.setType("freeentry");
+		zPropertySize.setValue("");
+		zPropertySize.setPermitValue(null);
+		zPropertySize.setPropertyOf("volume");
+		zProperties.put("volsize", zPropertySize);
+
+		Hashtable<Object,Object> permitValueSizeVolBlockSize = new Hashtable<Object,Object>();
+		zProperties zPropertySizeVolBlockSize = new zProperties();
+		permitValueSizeVolBlockSize.clear();
+		zPropertySizeVolBlockSize.setNameProperty("volblocksize");
+		zPropertySizeVolBlockSize.setLabelProperty("Volume Block Size");
+		zPropertySizeVolBlockSize.setType("noupdateable");
+		zPropertySizeVolBlockSize.setValue("");
+		zPropertySizeVolBlockSize.setPermitValue(null);
+		zPropertySizeVolBlockSize.setPropertyOf("volume");
+		zProperties.put("volblocksize", zPropertySizeVolBlockSize);
+
+		Hashtable<Object,Object> permitValueCompress = new Hashtable<Object,Object>();
+		zProperties zPropertyCompress = new zProperties();
+		permitValueCompress.clear();
+		zPropertyCompress.setNameProperty("compression");
+		zPropertyCompress.setLabelProperty("Compression");
+		zPropertyCompress.setType("nofreeentry");
+		zPropertyCompress.setValue("off");
+		permitValueCompress.put("off","off");
+		permitValueCompress.put("on","on");
+		zPropertyCompress.setPermitValue(permitValueCompress);
+		zPropertyCompress.setPropertyOf("volandfs");
+		zProperties.put("compression", zPropertyCompress);
+
+		Hashtable<Object,Object> permitValueReadOnly = new Hashtable<Object,Object>();
+		zProperties zPropertyReadOnly = new zProperties();
+		permitValueReadOnly.clear();
+		zPropertyReadOnly.setNameProperty("readonly");
+		zPropertyReadOnly.setLabelProperty("Read Only");
+		zPropertyReadOnly.setType("nofreeentry");
+		zPropertyReadOnly.setValue("off");
+		permitValueReadOnly.put("off","off");
+		permitValueReadOnly.put("on","on");
+		zPropertyReadOnly.setPermitValue(permitValueReadOnly);
+		zPropertyReadOnly.setPropertyOf("volandfs");
+		zProperties.put("readonly", zPropertyReadOnly);
+
+		Hashtable<Object,Object> permitValueDedup = new Hashtable<Object,Object>();
+		zProperties zPropertyDedup = new zProperties();
+		permitValueDedup.clear();
+		zPropertyDedup.setNameProperty("dedup");
+		zPropertyDedup.setLabelProperty("Deduplication");
+		zPropertyDedup.setType("nofreeentry");
+		zPropertyDedup.setValue("off");
+		permitValueDedup.put("off","off");
+		permitValueDedup.put("on","on");
+		zPropertyDedup.setPermitValue(permitValueDedup);
+		zPropertyDedup.setPropertyOf("volandfs");
+		zProperties.put("dedup", zPropertyDedup);
+
+		Hashtable<Object,Object> permitValueCopies = new Hashtable<Object,Object>();
+		zProperties zPropertyCopies = new zProperties();
+		permitValueCopies.clear();
+		zPropertyCopies.setNameProperty("copies");
+		zPropertyCopies.setLabelProperty("Copies");
+		zPropertyCopies.setType("freeentry");
+		zPropertyCopies.setValue("1");
+		zPropertyCopies.setPermitValue(null);
+		zPropertyCopies.setPropertyOf("volandfs");
+		zProperties.put("copies", zPropertyCopies);
+
+		Hashtable<Object,Object> permitValueUsedbysnapshots = new Hashtable<Object,Object>();
+		zProperties zPropertyUsedbysnapshots = new zProperties();
+		permitValueUsedbysnapshots.clear();
+		zPropertyUsedbysnapshots.setNameProperty("usedbysnapshots");
+		zPropertyUsedbysnapshots.setLabelProperty("Used By Snapshots");
+		zPropertyUsedbysnapshots.setType("noupdateable");
+		zPropertyUsedbysnapshots.setValue("");
+		zPropertyUsedbysnapshots.setPropertyOf("volandfs");
+		zPropertyUsedbysnapshots.setPermitValue(null);
+		zProperties.put("usedbysnapshots", zPropertyUsedbysnapshots);
+
+		Hashtable<Object,Object> permitValueUsedbydataset = new Hashtable<Object,Object>();
+		zProperties zPropertyUsedbydataset = new zProperties();
+		permitValueUsedbydataset.clear();
+		zPropertyUsedbydataset.setNameProperty("usedbydataset");
+		zPropertyUsedbydataset.setLabelProperty("Used By Dataset");
+		zPropertyUsedbydataset.setType("noupdateable");
+		zPropertyUsedbydataset.setValue("");
+		zPropertyUsedbydataset.setPermitValue(null);
+		zPropertyUsedbydataset.setPropertyOf("volandfs");
+		zProperties.put("usedbydataset", zPropertyUsedbydataset);
+
+		Hashtable<Object,Object> permitValueSync = new Hashtable<Object,Object>();
+		zProperties zPropertySync = new zProperties();
+		permitValueSync.clear();
+		zPropertySync.setNameProperty("sync");
+		zPropertySync.setLabelProperty("sync");
+		zPropertySync.setType("nofreeentry");
+		zPropertySync.setValue("standard");
+		permitValueSync.put("standard","standard");
+		permitValueSync.put("always","always");
+		permitValueSync.put("disabled","disabled");
+		zPropertySync.setPermitValue(permitValueSync);
+		zPropertySync.setPropertyOf("volandfs");
+		zProperties.put("sync", zPropertySync);
+
+		Hashtable<Object,Object> permitValueSnapdev = new Hashtable<Object,Object>();
+		zProperties zPropertySnapdev = new zProperties();
+		permitValueSnapdev.clear();
+		zPropertySnapdev.setNameProperty("snapdev");
+		zPropertySnapdev.setLabelProperty("Snapshot Device");
+		zPropertySnapdev.setType("nofreeentry");
+		zPropertySnapdev.setValue("visible");
+		permitValueSnapdev.put("visible","visible");
+		permitValueSnapdev.put("hidden","hidden");
+		zPropertySnapdev.setPermitValue(permitValueSnapdev);
+		zPropertySnapdev.setPropertyOf("volandfs");
+		zProperties.put("snapdev", zPropertySnapdev);
+
+		Hashtable<Object,Object> permitValueMounted = new Hashtable<Object,Object>();
+		zProperties zPropertyMounted = new zProperties();
+		permitValueMounted.clear();
+		zPropertyMounted.setNameProperty("mounted");
+		zPropertyMounted.setLabelProperty("Mounted");
+		zPropertyMounted.setType("noupdateable");
+		zPropertyMounted.setValue("");
+		zPropertyMounted.setPermitValue(permitValueMounted);
+		zPropertyMounted.setPropertyOf("fs");
+		zProperties.put("mounted", zPropertyMounted);
+
+		Hashtable<Object,Object> permitValueQuota = new Hashtable<Object,Object>();
+		zProperties zPropertyQuota = new zProperties();
+		permitValueQuota.clear();
+		zPropertyQuota.setNameProperty("quota");
+		zPropertyQuota.setLabelProperty("Quota");
+		zPropertyQuota.setType("freeentry");
+		zPropertyQuota.setValue("");
+		zPropertyQuota.setPermitValue(permitValueQuota);
+		zPropertyQuota.setPropertyOf("fs");
+		zProperties.put("quota", zPropertyQuota);
+
+		Hashtable<Object,Object> permitValueReservation = new Hashtable<Object,Object>();
+		zProperties zPropertyReservation = new zProperties();
+		permitValueReservation.clear();
+		zPropertyReservation.setNameProperty("reservation");
+		zPropertyReservation.setLabelProperty("Reservation");
+		zPropertyReservation.setType("freeentry");
+		zPropertyReservation.setValue("");
+		zPropertyReservation.setPermitValue(permitValueReservation);
+		zPropertyReservation.setPropertyOf("fs");
+		zProperties.put("reservation", zPropertyReservation);
+
+		Hashtable<Object,Object> permitValueRecordsize = new Hashtable<Object,Object>();
+		zProperties zPropertyRecordsize = new zProperties();
+		permitValueRecordsize.clear();
+		zPropertyRecordsize.setNameProperty("recordsize");
+		zPropertyRecordsize.setLabelProperty("Record Size");
+		zPropertyRecordsize.setType("noupdateable");
+		zPropertyRecordsize.setValue("");
+		zPropertyRecordsize.setPermitValue(permitValueRecordsize);
+		zPropertyRecordsize.setPropertyOf("fs");
+		zProperties.put("recordsize", zPropertyRecordsize);
+
+		Hashtable<Object,Object> permitValueMountpoint = new Hashtable<Object,Object>();
+		zProperties zPropertyMountpoint = new zProperties();
+		permitValueMountpoint.clear();
+		zPropertyMountpoint.setNameProperty("mountpoint");
+		zPropertyMountpoint.setLabelProperty("Mount Point");
+		zPropertyMountpoint.setType("noupdateable");
+		zPropertyMountpoint.setValue("");
+		zPropertyMountpoint.setPermitValue(null);
+		zPropertyMountpoint.setPropertyOf("fs");
+		zProperties.put("mountpoint", zPropertyMountpoint);
+
+		Hashtable<Object,Object> permitValueSharenfs = new Hashtable<Object,Object>();
+		zProperties zPropertySharenfs = new zProperties();
+		permitValueSharenfs.clear();
+		zPropertySharenfs.setNameProperty("sharenfs");
+		zPropertySharenfs.setLabelProperty("Share NFS");
+		zPropertySharenfs.setType("nofreeentry");
+		zPropertySharenfs.setValue("off");
+		permitValueSharenfs.put("off","off");
+		permitValueSharenfs.put("on","on");
+		zPropertySharenfs.setPermitValue(permitValueSharenfs);
+		zPropertySharenfs.setPropertyOf("fs");
+		zProperties.put("sharenfs", zPropertySharenfs);
+
+		Hashtable<Object,Object> permitValueAtime = new Hashtable<Object,Object>();
+		zProperties zPropertyAtime = new zProperties();
+		permitValueAtime.clear();
+		zPropertyAtime.setNameProperty("atime");
+		zPropertyAtime.setLabelProperty("Atime");
+		zPropertyAtime.setType("nofreeentry");
+		zPropertyAtime.setValue("on");
+		permitValueAtime.put("on","on");
+		permitValueAtime.put("off","off");
+		zPropertyAtime.setPermitValue(permitValueAtime);
+		zPropertyAtime.setPropertyOf("fs");
+		zProperties.put("atime", zPropertyAtime);
+
+		Hashtable<Object,Object> permitValueDevices = new Hashtable<Object,Object>();
+		zProperties zPropertyDevices = new zProperties();
+		permitValueDevices.clear();
+		zPropertyDevices.setNameProperty("devices");
+		zPropertyDevices.setLabelProperty("Devices");
+		zPropertyDevices.setType("nofreeentry");
+		zPropertyDevices.setValue("on");
+		permitValueDevices.put("on","on");
+		permitValueDevices.put("off","off");
+		zPropertyDevices.setPropertyOf("fs");
+		zPropertyDevices.setPermitValue(permitValueDevices);
+		zProperties.put("devices", zPropertyDevices);
+
+		Hashtable<Object,Object> permitValueExec = new Hashtable<Object,Object>();
+		zProperties zPropertyExec = new zProperties();
+		permitValueExec.clear();
+		zPropertyExec.setNameProperty("exec");
+		zPropertyExec.setLabelProperty("Exec");
+		zPropertyExec.setType("nofreeentry");
+		zPropertyExec.setValue("on");
+		permitValueExec.put("on","on");
+		permitValueExec.put("off","off");
+		zPropertyExec.setPermitValue(permitValueExec);
+		zPropertyExec.setPropertyOf("fs");
+		zProperties.put("exec", zPropertyExec);
+
+		Hashtable<Object,Object> permitValueSetuid = new Hashtable<Object,Object>();
+		zProperties zPropertySetuid = new zProperties();
+		permitValueSetuid.clear();
+		zPropertySetuid.setNameProperty("setuid");
+		zPropertySetuid.setLabelProperty("Setuid");
+		zPropertySetuid.setType("nofreeentry");
+		zPropertySetuid.setValue("on");
+		permitValueSetuid.put("on","on");
+		permitValueSetuid.put("off","off");
+		zPropertySetuid.setPermitValue(permitValueSetuid);
+		zPropertySetuid.setPropertyOf("fs");
+		zProperties.put("setuid", zPropertySetuid);
+
+		Hashtable<Object,Object> permitValueZoned = new Hashtable<Object,Object>();
+		zProperties zPropertyZoned = new zProperties();
+		permitValueZoned.clear();
+		zPropertyZoned.setNameProperty("zoned");
+		zPropertyZoned.setLabelProperty("Zoned");
+		zPropertyZoned.setType("nofreeentry");
+		zPropertyZoned.setValue("off");
+		permitValueZoned.put("off","off");
+		permitValueZoned.put("on","on");
+		zPropertyZoned.setPermitValue(permitValueZoned);
+		zPropertyZoned.setPropertyOf("fs");
+		zProperties.put("zoned", zPropertyZoned);
+
+		Hashtable<Object,Object> permitValueSnapdir = new Hashtable<Object,Object>();
+		zProperties zPropertySnapdir = new zProperties();
+		permitValueSnapdir.clear();
+		zPropertySnapdir.setNameProperty("snapdir");
+		zPropertySnapdir.setLabelProperty("Snapdir");
+		zPropertySnapdir.setType("nofreeentry");
+		zPropertySnapdir.setValue("visible");
+		permitValueSnapdir.put("visible","visible");
+		permitValueSnapdir.put("hidden","hidden");
+		zPropertySnapdir.setPermitValue(permitValueSnapdir);
+		zPropertySnapdir.setPropertyOf("fs");
+		zProperties.put("snapdir", zPropertySnapdir);
+
+		Hashtable<Object,Object> permitValueAclinherit = new Hashtable<Object,Object>();
+		zProperties zPropertyAclinherit = new zProperties();
+		permitValueAclinherit.clear();
+		zPropertyAclinherit.setNameProperty("aclinherit");
+		zPropertyAclinherit.setLabelProperty("Aclinherit");
+		zPropertyAclinherit.setType("nofreeentry");
+		zPropertyAclinherit.setValue("restricted");
+		permitValueAclinherit.put("restricted","restricted");
+		permitValueAclinherit.put("discard","discard");
+		permitValueAclinherit.put("noallow","noallow");
+		permitValueAclinherit.put("passthrough","passthrough");
+		permitValueAclinherit.put("passthrough-x","passthrough-x");
+		zPropertyAclinherit.setPermitValue(permitValueAclinherit);
+		zPropertyAclinherit.setPropertyOf("fs");
+		zProperties.put("aclinherit", zPropertyAclinherit);
+
+		Hashtable<Object,Object> permitValueCanmount = new Hashtable<Object,Object>();
+		zProperties zPropertyCanmount = new zProperties();
+		permitValueCanmount.clear();
+		zPropertyCanmount.setNameProperty("canmount");
+		zPropertyCanmount.setLabelProperty("Can Mount");
+		zPropertyCanmount.setType("nofreeentry");
+		zPropertyCanmount.setValue("on");
+		permitValueCanmount.put("on","on");
+		permitValueCanmount.put("off","off");
+		zPropertyCanmount.setPermitValue(permitValueCanmount);
+		zPropertyCanmount.setPropertyOf("fs");
+		zProperties.put("canmount", zPropertyCanmount);
+		
+		Hashtable<Object,Object> permitValueXattr = new Hashtable<Object,Object>();
+		zProperties zPropertyXattr = new zProperties();
+		permitValueXattr.clear();
+		zPropertyXattr.setNameProperty("xattr");
+		zPropertyXattr.setLabelProperty("Xattr");
+		zPropertyXattr.setType("nofreeentry");
+		zPropertyXattr.setValue("on");
+		permitValueXattr.put("on","on");
+		permitValueXattr.put("off","off");
+		zPropertyXattr.setPermitValue(permitValueXattr);
+		zPropertyXattr.setPropertyOf("fs");
+		zProperties.put("xattr", zPropertyXattr);
+		
+		Hashtable<Object,Object> permitValueUtf8only = new Hashtable<Object,Object>();
+		zProperties zPropertyUtf8only = new zProperties();
+		permitValueUtf8only.clear();
+		zPropertyUtf8only.setNameProperty("utf8only");
+		zPropertyUtf8only.setLabelProperty("Utf8only");
+		zPropertyUtf8only.setType("nofreeentry");
+		zPropertyUtf8only.setValue("off");
+		permitValueUtf8only.put("off","off");
+		permitValueUtf8only.put("on","on");
+		zPropertyUtf8only.setPermitValue(permitValueUtf8only);
+		zPropertyUtf8only.setPropertyOf("fs");
+		zProperties.put("utf8only", zPropertyUtf8only);
+		
+		Hashtable<Object,Object> permitValueNormalization = new Hashtable<Object,Object>();
+		zProperties zPropertyNormalization = new zProperties();
+		permitValueNormalization.clear();
+		zPropertyNormalization.setNameProperty("normalization");
+		zPropertyNormalization.setLabelProperty("Normalization");
+		zPropertyNormalization.setType("nofreeentry");
+		zPropertyNormalization.setValue("none");
+		permitValueNormalization.put("none","none");
+		permitValueNormalization.put("formC","formC");
+		permitValueNormalization.put("formD","formD");
+		permitValueNormalization.put("formKC","formKC");
+		permitValueNormalization.put("formKD","formKD");
+		zPropertyNormalization.setPermitValue(permitValueNormalization);
+		zPropertyNormalization.setPropertyOf("fs");
+		zProperties.put("normalization", zPropertyNormalization);
+
+		Hashtable<Object,Object> permitValueCasesensitive = new Hashtable<Object,Object>();
+		zProperties zPropertyCasesensitive = new zProperties();
+		permitValueCasesensitive.clear();
+		zPropertyCasesensitive.setNameProperty("casesensitivity");
+		zPropertyCasesensitive.setLabelProperty("Case Sensitivity");
+		zPropertyCasesensitive.setType("nofreeentry");
+		zPropertyCasesensitive.setValue("sensitive");
+		permitValueCasesensitive.put("sensitive","sensitive");
+		permitValueCasesensitive.put("insensitive","insensitive");
+		permitValueCasesensitive.put("mixed","mixed");
+		zPropertyCasesensitive.setPermitValue(permitValueCasesensitive);
+		zPropertyCasesensitive.setPropertyOf("fs");
+		zProperties.put("casesensitivity", zPropertyCasesensitive);
+		
+		Hashtable<Object,Object> permitValueVscan = new Hashtable<Object,Object>();
+		zProperties zPropertyVscan = new zProperties();
+		permitValueVscan.clear();
+		zPropertyVscan.setNameProperty("vscan");
+		zPropertyVscan.setLabelProperty("Vscan");
+		zPropertyVscan.setType("nofreeentry");
+		zPropertyVscan.setValue("off");
+		permitValueVscan.put("off","off");
+		permitValueVscan.put("on","on");
+		zPropertyVscan.setPermitValue(permitValueVscan);
+		zPropertyVscan.setPropertyOf("fs");
+		zProperties.put("vscan", zPropertyVscan);
+		
+		Hashtable<Object,Object> permitValueNbmand = new Hashtable<Object,Object>();
+		zProperties zPropertyNbmand = new zProperties();
+		permitValueNbmand.clear();
+		zPropertyNbmand.setNameProperty("nbmand");
+		zPropertyNbmand.setLabelProperty("Non Blocking mandatory locks");
+		zPropertyNbmand.setType("nofreeentry");
+		zPropertyNbmand.setValue("off");
+		permitValueNbmand.put("off","off");
+		permitValueNbmand.put("on","on");
+		zPropertyNbmand.setPermitValue(permitValueNbmand);
+		zPropertyNbmand.setPropertyOf("fs");
+		zProperties.put("nbmand", zPropertyNbmand);
+		
+		Hashtable<Object,Object> permitValueSharesmb = new Hashtable<Object,Object>();
+		zProperties zPropertySharesmb = new zProperties();
+		permitValueSharesmb.clear();
+		zPropertySharesmb.setNameProperty("sharesmb");
+		zPropertySharesmb.setLabelProperty("Share SMB");
+		zPropertySharesmb.setType("nofreeentry");
+		zPropertySharesmb.setValue("off");
+		permitValueSharesmb.put("off","off");
+		permitValueSharesmb.put("on","on");
+		zPropertySharesmb.setPermitValue(permitValueSharesmb);
+		zPropertySharesmb.setPropertyOf("fs");
+		zProperties.put("sharesmb", zPropertySharesmb);
+		
+		Hashtable<Object,Object> permitValueOrigin = new Hashtable<Object,Object>();
+		zProperties zPropertyOrigin = new zProperties();
+		permitValueOrigin.clear();
+		zPropertyOrigin.setNameProperty("origin");
+		zPropertyOrigin.setLabelProperty("Clone Origin");
+		zPropertyOrigin.setType("noupdateable");
+		zPropertyOrigin.setValue("");
+		zPropertyOrigin.setPermitValue(null);
+		zPropertyOrigin.setPropertyOf("volandfs");
+		zProperties.put("origin", zPropertyOrigin);
+		
+		Hashtable<Object,Object> permitValueClone = new Hashtable<Object,Object>();
+		zProperties zPropertyClone = new zProperties();
+		permitValueClone.clear();
+		zPropertyClone.setNameProperty("clone");
+		zPropertyClone.setLabelProperty("Clone");
+		zPropertyClone.setType("noupdateable");
+		zPropertyClone.setValue("");
+		zPropertyClone.setPermitValue(null);
+		zPropertyClone.setPropertyOf("volandfs");
+		zProperties.put("clone", zPropertyClone);
+		
+		
+	}
+
+}

Property changes on: src/gZFS/zvol.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/log4j.properties
===================================================================
--- src/gZFS/log4j.properties	(revision 0)
+++ src/gZFS/log4j.properties	(revision 14)
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+# An example log4j configuration file that outputs to System.out.  The
+# output information consists of relative time, log level, thread
+# name, logger name, nested diagnostic context and the message in that
+# order.
+
+# For the general syntax of property based configuration files see the
+# documenation of org.apache.log4j.PropertyConfigurator.
+
+log4j.rootLogger=INFO, A1, A2
+log4j.appender.A2.append=false
+log4j.appender.A2=org.apache.log4j.RollingFileAppender
+log4j.appender.A2.File=${user.home}/gZFS.log
+
+# A1 is set to be a ConsoleAppender which outputs to System.out. 
+log4j.appender.A1=org.apache.log4j.ConsoleAppender
+
+# A1 uses PatternLayout.
+log4j.appender.A1.layout=org.apache.log4j.PatternLayout
+log4j.appender.A2.layout=org.apache.log4j.PatternLayout
+
+# The conversion pattern uses format specifiers. You might want to
+# change the pattern an watch the output format change.
+log4j.appender.A1.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n
+log4j.appender.A2.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n
+
+# In this example, we are not really interested in INNER loop or SWAP
+# messages. See the effects of uncommenting and changing the levels of
+# the following loggers.
+# log4j.logger.org.apache.log4j.examples.SortAlgo.INNER=WARN
+# log4j.logger.org.apache.log4j.examples.SortAlgo.SWAP=WARN
+ 
\ No newline at end of file

Property changes on: src/gZFS/log4j.properties
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/zreplicas.java
===================================================================
--- src/gZFS/zreplicas.java	(revision 0)
+++ src/gZFS/zreplicas.java	(revision 14)
@@ -0,0 +1,308 @@
+package gZFS;
+
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.Hashtable;
+
+public class zreplicas {
+	public Hashtable<String,zProperties> zProperties = new Hashtable<String, zProperties>();
+	public Hashtable<String,zProperties> zSchedulerProperties = new Hashtable<String, zProperties>();
+
+	private Hashtable<Object, Object> cronMinute = new Hashtable<Object, Object>();
+	private Hashtable<Object, Object> cronHour= new Hashtable<Object, Object>();
+	private Hashtable<Object, Object> cronMonth= new Hashtable<Object, Object>();
+	private Hashtable<Object, Object> cronDayOfMonth = new Hashtable<Object, Object>();
+	private Hashtable<Object, Object> cronDayOfWeek = new Hashtable<Object, Object>();
+	
+	zreplicas(){
+		String valueForHash = null;
+		for (int i=1;i<61;i++){
+			
+			if ( i<10){
+				valueForHash="0"+String.valueOf(i);
+			}else{
+				valueForHash=String.valueOf(i);
+			}
+			cronMinute.put(String.valueOf(i), valueForHash);
+			if ( i ==1){
+				cronMinute.put("*", "All");
+			}else{
+				cronMinute.put("*/"+i, "Every "+valueForHash+" Minutes");	
+			}
+		}
+		
+		for (int i=0;i<24;i++){
+			if ( i<10){
+				valueForHash="0"+String.valueOf(i);
+			}else{
+				valueForHash=String.valueOf(i);
+			}
+			cronHour.put(String.valueOf(i), valueForHash);
+			if ( i ==1){
+				cronHour.put("*", "All");
+			}else{
+				cronHour.put("*/"+i, "Every "+valueForHash+" Hours");	
+			}
+		}
+		
+		cronMonth.put("01", "January");
+		cronMonth.put("02", "February");
+		cronMonth.put("03", "March");
+		cronMonth.put("04", "April");
+		cronMonth.put("05", "May");
+		cronMonth.put("06", "June");
+		cronMonth.put("07", "July");
+		cronMonth.put("08", "August");
+		cronMonth.put("09", "September");
+		cronMonth.put("10", "October");
+		cronMonth.put("11", "November");
+		cronMonth.put("12", "December");
+		cronMonth.put("*", "All");
+		
+		cronDayOfWeek.put("0", "Sunday");
+		cronDayOfWeek.put("1", "Monday");
+		cronDayOfWeek.put("2", "Tuesday");
+		cronDayOfWeek.put("3", "Wednesday");
+		cronDayOfWeek.put("4", "Thursday");
+		cronDayOfWeek.put("5", "Friday");
+		cronDayOfWeek.put("6", "Saturday");
+		cronDayOfWeek.put("*", "All");
+		
+		
+		for (int i=1;i<31;i++){
+			if ( i<10){
+				valueForHash="0"+String.valueOf(i);
+			}else{
+				valueForHash=String.valueOf(i);
+			}
+			cronDayOfMonth.put(String.valueOf(i), valueForHash);
+			if ( i ==1){
+				cronDayOfMonth.put("*", "All");
+			}else{
+				cronDayOfMonth.put("*/"+i, "Every "+valueForHash+" Days");	
+			}
+		}
+
+		Hashtable<Object, Object> permitValueNameVolFS = new Hashtable<Object, Object>();
+		zProperties zPropertyNameVolFS = new zProperties();
+		permitValueNameVolFS.clear();
+		zPropertyNameVolFS.setNameProperty("name");
+		zPropertyNameVolFS.setLabelProperty("Name Volume/FileSystem replicated");
+		zPropertyNameVolFS.setType("noupdateable");
+		zPropertyNameVolFS.setValue("");
+		zPropertyNameVolFS.setPermitValue(null);
+		zPropertyNameVolFS.setMultivalues(null);
+		zSchedulerProperties.put("name", zPropertyNameVolFS);
+		
+		Hashtable<Object, Object> permitValueFileConf = new Hashtable<Object, Object>();
+		zProperties zPropertyFileConf = new zProperties();
+		permitValueFileConf.clear();
+		zPropertyFileConf.setNameProperty("fileconf");
+		zPropertyFileConf.setLabelProperty("Configuration File");
+		zPropertyFileConf.setType("noupdateable");
+		zPropertyFileConf.setValue("");
+		zPropertyFileConf.setPermitValue(null);
+		zPropertyFileConf.setMultivalues(null);
+		zSchedulerProperties.put("fileconf", zPropertyFileConf);
+
+		Hashtable<Object, Object> permitValueNameReplica = new Hashtable<Object, Object>();
+		zProperties zPropertyNameReplica = new zProperties();
+		permitValueNameReplica.clear();
+		zPropertyNameReplica.setNameProperty("namereplica");
+		zPropertyNameReplica.setLabelProperty("Replica Name");
+		zPropertyNameReplica.setType("noupdateable");
+		zPropertyNameReplica.setValue("");
+		zPropertyNameReplica.setPermitValue(null);
+		zPropertyNameReplica.setMultivalues(null);
+		zSchedulerProperties.put("namereplica", zPropertyNameReplica);
+
+		Hashtable<Object, Object> permitValueNbReplicas = new Hashtable<Object, Object>();
+		zProperties zPropertyNbReplicas = new zProperties();
+		permitValueNbReplicas.clear();
+		zPropertyNbReplicas.setNameProperty("nbreplica");
+		zPropertyNbReplicas.setLabelProperty("Number replicas to keep");
+		zPropertyNbReplicas.setType("freeentry");
+		zPropertyNbReplicas.setValue("");
+		zPropertyNbReplicas.setPermitValue(null);
+		zPropertyNbReplicas.setMultivalues(null);
+		zSchedulerProperties.put("nbreplica", zPropertyNbReplicas);
+		
+		Hashtable<Object, Object> permitValueLastSnapshotReplicated = new Hashtable<Object, Object>();
+		zProperties zPropertyLastSnapshotReplicated = new zProperties();
+		permitValueLastSnapshotReplicated.clear();
+		zPropertyLastSnapshotReplicated.setNameProperty("lastsnapshotreplicated");
+		zPropertyLastSnapshotReplicated.setLabelProperty("Last Snapshot Replicated");
+		zPropertyLastSnapshotReplicated.setType("noupdateable");
+		zPropertyLastSnapshotReplicated.setValue("");
+		zPropertyLastSnapshotReplicated.setPermitValue(null);
+		zPropertyLastSnapshotReplicated.setMultivalues(null);
+		zSchedulerProperties.put("lastsnapshotreplicated", zPropertyLastSnapshotReplicated);
+
+		Hashtable<Object, Object> permitValueMinutesOfSReplicas = new Hashtable<Object, Object>();
+		zProperties zPropertyMinutesOfSReplicas = new zProperties();
+		permitValueMinutesOfSReplicas.clear();
+		zPropertyMinutesOfSReplicas.setNameProperty("minutesofreplicas");
+		zPropertyMinutesOfSReplicas.setLabelProperty("Minutes of replication [0-60]");
+		zPropertyMinutesOfSReplicas.setType("nofreeentry");
+		zPropertyMinutesOfSReplicas.setValue("");
+		zPropertyMinutesOfSReplicas.setPermitValue(cronMinute);
+		zPropertyMinutesOfSReplicas.setMultivalues(null);
+		zSchedulerProperties.put("minutesofreplicas", zPropertyMinutesOfSReplicas);
+
+		Hashtable<Object, Object> permitValueReplicaServer = new Hashtable<Object, Object>();
+		zProperties zPropertyReplicaServer = new zProperties();
+		permitValueReplicaServer.clear();
+		zPropertyReplicaServer.setNameProperty("server");
+		zPropertyReplicaServer.setLabelProperty("Server For Replication");
+		zPropertyReplicaServer.setType("nofreeentry");
+		zPropertyReplicaServer.setValue("");
+		zPropertyReplicaServer.setPermitValue(null);
+		zPropertyReplicaServer.setMultivalues(null);
+		zSchedulerProperties.put("server", zPropertyReplicaServer);
+		
+		Hashtable<Object, Object> permitValueReplicaPool = new Hashtable<Object, Object>();
+		zProperties zPropertyReplicaPool = new zProperties();
+		permitValueReplicaPool.clear();
+		zPropertyReplicaPool.setNameProperty("replicapool");
+		zPropertyReplicaPool.setLabelProperty("Pool For Replication");
+		zPropertyReplicaPool.setType("nofreeentry");
+		zPropertyReplicaPool.setValue("");
+		zPropertyReplicaPool.setPermitValue(null);
+		zPropertyReplicaPool.setMultivalues(null);
+		zSchedulerProperties.put("replicapool", zPropertyReplicaPool);
+		
+		
+		Hashtable<Object, Object> permitValueReplicasHours = new Hashtable<Object, Object>();
+		zProperties zPropertyReplicasHours = new zProperties();
+		permitValueReplicasHours.clear();
+		zPropertyReplicasHours.setNameProperty("hoursofreplicas");
+		zPropertyReplicasHours.setLabelProperty("Hour of replication [0-23]");
+		zPropertyReplicasHours.setType("nofreeentry");
+		zPropertyReplicasHours.setValue("");
+		zPropertyReplicasHours.setPermitValue(cronHour);
+		zPropertyReplicasHours.setMultivalues(null);
+		zSchedulerProperties.put("hoursofreplicas", zPropertyReplicasHours);
+
+		Hashtable<Object, Object> permitValueDayOfWeekReplicas = new Hashtable<Object, Object>();
+		zProperties zPropertyDayOfWeekReplicas = new zProperties();
+		permitValueDayOfWeekReplicas.clear();
+		zPropertyDayOfWeekReplicas.setNameProperty("dayofweekreplicas");
+		zPropertyDayOfWeekReplicas.setLabelProperty("Day of week of Replication [0-6] 0 for Sunday");
+		zPropertyDayOfWeekReplicas.setType("nofreeentry");
+		zPropertyDayOfWeekReplicas.setValue("");
+		zPropertyDayOfWeekReplicas.setPermitValue(cronDayOfWeek);
+		zPropertyDayOfWeekReplicas.setMultivalues(null);
+		zSchedulerProperties.put("dayofweekreplicas", zPropertyDayOfWeekReplicas);
+
+		Hashtable<Object, Object> permitValueDayOfMonthReplicas = new Hashtable<Object, Object>();
+		zProperties zPropertyDayOfMonthReplicas = new zProperties();
+		permitValueDayOfMonthReplicas.clear();
+		zPropertyDayOfMonthReplicas.setNameProperty("dayofmonthreplicas");
+		zPropertyDayOfMonthReplicas.setLabelProperty("Day of Month of Snapshots [1-30]");
+		zPropertyDayOfMonthReplicas.setType("nofreeentry");
+		zPropertyDayOfMonthReplicas.setValue("");
+		zPropertyDayOfMonthReplicas.setPermitValue(cronDayOfMonth);
+		zPropertyDayOfMonthReplicas.setMultivalues(null);
+		zSchedulerProperties.put("dayofmonthreplicas", zPropertyDayOfMonthReplicas);
+
+		Hashtable<Object, Object> permitValueMonthReplicas = new Hashtable<Object, Object>();
+		zProperties zPropertyMonthReplicas = new zProperties();
+		permitValueMonthReplicas.clear();
+		zPropertyMonthReplicas.setNameProperty("monthreplicas");
+		zPropertyMonthReplicas.setLabelProperty("Month");
+		zPropertyMonthReplicas.setType("nofreeentry");
+		zPropertyMonthReplicas.setValue("");
+		zPropertyMonthReplicas.setPermitValue(cronMonth);
+		zPropertyMonthReplicas.setMultivalues(null);
+		zSchedulerProperties.put("monthreplicas", zPropertyMonthReplicas);
+
+		/*Hashtable<Object, Object> permitValueFreqSnapshots = new Hashtable<Object, Object>();
+		zProperties zPropertyFreqSnapshots = new zProperties();
+		permitValueFreqSnapshots.clear();
+		zPropertyFreqSnapshots.setNameProperty("frequency");
+		zPropertyFreqSnapshots.setLabelProperty("Frequency");
+		zPropertyFreqSnapshots.setType("internaluse");
+		zPropertyFreqSnapshots.setValue("");
+		zPropertyFreqSnapshots.setPermitValue(null);
+		zSchedulerProperties.put("frequency", zPropertyFreqSnapshots);*/
+
+
+	}
+
+	public void formatCronValue(String frequency, String DaySnapshot){
+		String cronValue ="";
+
+		if (frequency.contains("Hours")){
+			this.zSchedulerProperties.get("minutesofsnaphots").setValue("*");
+			this.zSchedulerProperties.get("hoursofsnaphots").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Hours", ""));
+			this.zSchedulerProperties.get("dayofmonthsnapshots").setValue("*");
+			this.zSchedulerProperties.get("monthsnapshots").setValue("*");
+			this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+
+		}else{
+			this.zSchedulerProperties.get("hour").setValue(this.zSchedulerProperties.get("time").getValue().split(":")[0]);
+			this.zSchedulerProperties.get("minutes").setValue(this.zSchedulerProperties.get("time").getValue().split(":")[1]);
+			if (frequency.contains("Days")){
+				this.zSchedulerProperties.get("dayofmonthsnapshots").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Days", ""));
+				this.zSchedulerProperties.get("monthsnapshots").setValue("*");
+				this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+
+			}else{
+				if (frequency.contains("Months")){
+					this.zSchedulerProperties.get("dayofmonthsnapshots").setValue(this.zSchedulerProperties.get("dayofmonthsnapshots").getValue());
+					this.zSchedulerProperties.get("monthsnapshots").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Months", ""));
+					this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+
+				}else{
+					if (frequency.contains("Hour")){
+						this.zSchedulerProperties.get("minutes").setValue("*");
+						this.zSchedulerProperties.get("hours").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Hour", ""));
+						this.zSchedulerProperties.get("dayofmonthsnapshots").setValue("*");
+						this.zSchedulerProperties.get("monthsnapshots").setValue("*");
+						this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+					}else{
+						if (frequency.contains("Day")){
+							this.zSchedulerProperties.get("dayofmonthsnapshots").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Day", ""));
+							this.zSchedulerProperties.get("monthsnapshots").setValue("*");
+							this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+						}else{
+							if (frequency.contains("Month")){
+								this.zSchedulerProperties.get("dayofmonthsnapshots").setValue(this.zSchedulerProperties.get("dayofmonthsnapshots").getValue());
+								this.zSchedulerProperties.get("monthsnapshots").setValue("*/"+frequency.replaceAll("Every", "").replaceAll("Month", ""));
+								this.zSchedulerProperties.get("dayofweeksnapshots").setValue("*");
+							}
+						}
+					}
+				}
+			}
+		}
+	}
+
+	public static int getIntDayOfWeek(String dayOfWeek)  
+	{  
+		try   
+		{   
+			DateFormat formatter ;   
+			Date date ;   
+			formatter = new SimpleDateFormat("EEE");  
+			date = (Date)formatter.parse(dayOfWeek);    
+			GregorianCalendar g = new GregorianCalendar();  
+			g.setTime(date);  
+			return g.get(Calendar.DAY_OF_WEEK);  
+		}   
+		catch (ParseException e)  
+		{  
+			System.out.println("Exception :"+e);    
+		}    
+		return 0;  
+	}
+	
+	
+	
+	
+	
+}

Property changes on: src/gZFS/zreplicas.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/zfsVolandFs.java
===================================================================
--- src/gZFS/zfsVolandFs.java	(revision 0)
+++ src/gZFS/zfsVolandFs.java	(revision 14)
@@ -0,0 +1,13 @@
+package gZFS;
+
+import java.util.ArrayList;
+import java.util.Hashtable;
+import java.util.List;
+import java.util.Properties;
+
+import org.eclipse.ui.internal.Model;
+
+public class zfsVolandFs {
+	
+	
+}

Property changes on: src/gZFS/zfsVolandFs.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/gZFS/zserver.java
===================================================================
--- src/gZFS/zserver.java	(revision 0)
+++ src/gZFS/zserver.java	(revision 14)
@@ -0,0 +1,376 @@
+package gZFS;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Hashtable;
+import java.util.List;
+import java.util.Properties;
+
+import org.apache.log4j.Logger;
+
+
+public class zserver {
+	private Logger log = Logger.getLogger(getClass().getPackage().getName()+" "+getClass().getCanonicalName());
+	public Hashtable<String,zProperties> zProperties = new Hashtable<String, zProperties>();
+	zserver(){
+	List<Object> permitValueServerIP = new ArrayList<Object>();
+	zProperties zPropertyServerIP = new zProperties();
+	permitValueServerIP.clear();
+	zPropertyServerIP.setNameProperty("serverIP");
+	zPropertyServerIP.setLabelProperty("Address IP or Server Name");
+	zPropertyServerIP.setType("freeentry");
+	zPropertyServerIP.setValue("");
+	zPropertyServerIP.setPermitValue(null);
+	zProperties.put("serverIP", zPropertyServerIP);
+	
+	List<Object> permitValueUserLogin = new ArrayList<Object>();
+	zProperties zPropertyUserLogin = new zProperties();
+	permitValueServerIP.clear();
+	zPropertyUserLogin.setNameProperty("userLogin");
+	zPropertyUserLogin.setLabelProperty("User Login");
+	zPropertyUserLogin.setType("freeentry");
+	zPropertyUserLogin.setValue("");
+	zPropertyUserLogin.setPermitValue(null);
+	zProperties.put("userLogin", zPropertyUserLogin);
+	
+	List<Object> permitValueUserPasswd = new ArrayList<Object>();
+	zProperties zPropertyUserPasswd = new zProperties();
+	permitValueUserPasswd.clear();
+	zPropertyUserPasswd.setNameProperty("userPasswd");
+	zPropertyUserPasswd.setLabelProperty("User Password");
+	zPropertyUserPasswd.setType("freeentry");
+	zPropertyUserPasswd.setValue("");
+	zPropertyUserPasswd.setPermitValue(null);
+	zProperties.put("userPasswd", zPropertyUserPasswd);
+	
+	List<Object> permitValueZfsBinStatus = new ArrayList<Object>();
+	zProperties zPropertyZfsBinStatus  = new zProperties();
+	permitValueZfsBinStatus.clear();
+	zPropertyZfsBinStatus.setNameProperty("binzfs");
+	zPropertyZfsBinStatus.setLabelProperty("Binary : ZFS");
+	zPropertyZfsBinStatus.setType("noupdateable");
+	zPropertyZfsBinStatus.setValue("");
+	zPropertyZfsBinStatus.setPermitValue(null);
+	zProperties.put("binzfs", zPropertyZfsBinStatus);
+	
+	List<Object> permitValueBinZpool = new ArrayList<Object>();
+	zProperties zPropertyBinZpool  = new zProperties();
+	permitValueBinZpool.clear();
+	zPropertyBinZpool.setNameProperty("binzpool");
+	zPropertyBinZpool.setLabelProperty("Binary : Zpool");
+	zPropertyBinZpool.setType("noupdateable");
+	zPropertyBinZpool.setValue("");
+	zPropertyBinZpool.setPermitValue(null);
+	zProperties.put("binzpool", zPropertyBinZpool);
+	
+	List<Object> permitValueIscsiGetConfBinStatus = new ArrayList<Object>();
+	zProperties zPropertyIscsiGetConfBinStatus  = new zProperties();
+	permitValueIscsiGetConfBinStatus.clear();
+	zPropertyIscsiGetConfBinStatus.setNameProperty("biniscsigetconf");
+	zPropertyIscsiGetConfBinStatus.setLabelProperty("Tool : get ISCSI Configuration");
+	zPropertyIscsiGetConfBinStatus.setType("noupdateable");
+	zPropertyIscsiGetConfBinStatus.setValue("");
+	zPropertyIscsiGetConfBinStatus.setPermitValue(null);
+	zProperties.put("biniscsigetconf", zPropertyIscsiGetConfBinStatus);
+	
+	List<Object> permitValueBinGetProvisionedSpace = new ArrayList<Object>();
+	zProperties zPropertyBinGetProvisionedSpace  = new zProperties();
+	permitValueBinGetProvisionedSpace.clear();
+	zPropertyBinGetProvisionedSpace.setNameProperty("bingetprovisionedspace");
+	zPropertyBinGetProvisionedSpace.setLabelProperty("Tool : Provisionned Space");
+	zPropertyBinGetProvisionedSpace.setType("noupdateable");
+	zPropertyBinGetProvisionedSpace.setValue("");
+	zPropertyBinGetProvisionedSpace.setPermitValue(null);
+	zProperties.put("bingetprovisionedspace", zPropertyBinGetProvisionedSpace);
+	
+	List<Object> permitValueGetConfSnapshot = new ArrayList<Object>();
+	zProperties zPropertyGetConfSnapshot  = new zProperties();
+	permitValueGetConfSnapshot.clear();
+	zPropertyGetConfSnapshot.setNameProperty("bingetconfsnapshot");
+	zPropertyGetConfSnapshot.setLabelProperty("Tool : get Snapshot Configuration");
+	zPropertyGetConfSnapshot.setType("noupdateable");
+	zPropertyGetConfSnapshot.setValue("");
+	zPropertyGetConfSnapshot.setPermitValue(null);
+	zProperties.put("bingetconfsnapshot", zPropertyGetConfSnapshot);
+	
+	
+	List<Object> permitValueBinZfsSnapshots = new ArrayList<Object>();
+	zProperties zPropertyBinZfsSnapshots  = new zProperties();
+	permitValueBinZfsSnapshots.clear();
+	zPropertyBinZfsSnapshots.setNameProperty("binzfssnapshots");
+	zPropertyBinZfsSnapshots.setLabelProperty("Tool : ZFS Snapshots");
+	zPropertyBinZfsSnapshots.setType("noupdateable");
+	zPropertyBinZfsSnapshots.setValue("");
+	zPropertyBinZfsSnapshots.setPermitValue(null);
+	zProperties.put("binzfssnapshots", zPropertyBinZfsSnapshots);
+	
+	List<Object> permitValueBinZfsEnableSnapshots = new ArrayList<Object>();
+	zProperties zPropertyBinZfsEnableSnapshots  = new zProperties();
+	permitValueBinZfsEnableSnapshots.clear();
+	zPropertyBinZfsEnableSnapshots.setNameProperty("binzfsenablesnapshots");
+	zPropertyBinZfsEnableSnapshots.setLabelProperty("Tool : Enable ZFS Snapshots");
+	zPropertyBinZfsEnableSnapshots.setType("noupdateable");
+	zPropertyBinZfsEnableSnapshots.setValue("");
+	zPropertyBinZfsEnableSnapshots.setPermitValue(null);
+	zProperties.put("binzfsenablesnapshots", zPropertyBinZfsEnableSnapshots);
+	
+	List<Object> permitValueBinZfsDisableSnapshots = new ArrayList<Object>();
+	zProperties zPropertyBinZfsDisableSnapshots  = new zProperties();
+	permitValueBinZfsDisableSnapshots.clear();
+	zPropertyBinZfsDisableSnapshots.setNameProperty("binzfsdisablesnapshots");
+	zPropertyBinZfsDisableSnapshots.setLabelProperty("Tool : Disable ZFS Snapshots");
+	zPropertyBinZfsDisableSnapshots.setType("noupdateable");
+	zPropertyBinZfsDisableSnapshots.setValue("");
+	zPropertyBinZfsDisableSnapshots.setPermitValue(null);
+	zProperties.put("binzfsdisablesnapshots", zPropertyBinZfsDisableSnapshots);
+	
+	
+	List<Object> permitValuePathZfsconfSnapshots = new ArrayList<Object>();
+	zProperties zPropertyPathZfsconfSnapshots  = new zProperties();
+	permitValuePathZfsconfSnapshots.clear();
+	zPropertyPathZfsconfSnapshots.setNameProperty("pathzfsconfsnapshots");
+	zPropertyPathZfsconfSnapshots.setLabelProperty("Path : Snapshot Configuration File");
+	zPropertyPathZfsconfSnapshots.setType("noupdateable");
+	zPropertyPathZfsconfSnapshots.setValue("");
+	zPropertyPathZfsconfSnapshots.setPermitValue(null);
+	zProperties.put("pathzfsconfsnapshots", zPropertyPathZfsconfSnapshots);
+	
+	List<Object> permitValuePathZfsConfTools = new ArrayList<Object>();
+	zProperties zPropertyPathZfsConfTools  = new zProperties();
+	permitValuePathZfsConfTools.clear();
+	zPropertyPathZfsConfTools.setNameProperty("pathzfsconftools");
+	zPropertyPathZfsConfTools.setLabelProperty("Path : ZFS Tools");
+	zPropertyPathZfsConfTools.setType("noupdateable");
+	zPropertyPathZfsConfTools.setValue("");
+	zPropertyPathZfsConfTools.setPermitValue(null);
+	zProperties.put("pathzfsconftools", zPropertyPathZfsConfTools);
+	
+	List<Object> permitValuePathZfsConf = new ArrayList<Object>();
+	zProperties zPropertyPathZfsConf  = new zProperties();
+	permitValuePathZfsConf.clear();
+	zPropertyPathZfsConf.setNameProperty("pathzfsconf");
+	zPropertyPathZfsConf.setLabelProperty("Path : gZFS");
+	zPropertyPathZfsConf.setType("noupdateable");
+	zPropertyPathZfsConf.setValue("");
+	zPropertyPathZfsConf.setPermitValue(null);
+	zProperties.put("pathzfsconf", zPropertyPathZfsConf);
+	
+	List<Object> permitValuePathZfsVolDevice = new ArrayList<Object>();
+	zProperties zPropertyPathZfsVolDevice  = new zProperties();
+	permitValuePathZfsVolDevice.clear();
+	zPropertyPathZfsVolDevice.setNameProperty("pathzfsvoldevice");
+	zPropertyPathZfsVolDevice.setLabelProperty("Path : ZFS Volume Device");
+	zPropertyPathZfsVolDevice.setType("noupdateable");
+	zPropertyPathZfsVolDevice.setValue("");
+	zPropertyPathZfsVolDevice.setPermitValue(null);
+	zProperties.put("pathzfsvoldevice", zPropertyPathZfsVolDevice);
+	
+	List<Object> permitValueBinZfsAddISCSI = new ArrayList<Object>();
+	zProperties zPropertyBinZfsAddISCSI  = new zProperties();
+	permitValueBinZfsAddISCSI.clear();
+	zPropertyBinZfsAddISCSI.setNameProperty("binzfsaddiscsi");
+	zPropertyBinZfsAddISCSI.setLabelProperty("Tool : Create ISCSI Volume");
+	zPropertyBinZfsAddISCSI.setType("noupdateable");
+	zPropertyBinZfsAddISCSI.setValue("");
+	zPropertyBinZfsAddISCSI.setPermitValue(null);
+	zProperties.put("binzfsaddiscsi", zPropertyBinZfsAddISCSI);
+	
+	List<Object> permitValueBinZfsDelISCSI = new ArrayList<Object>();
+	zProperties zPropertyBinZfsDelISCSI  = new zProperties();
+	permitValueBinZfsDelISCSI.clear();
+	zPropertyBinZfsDelISCSI.setNameProperty("binzfsadelscsi");
+	zPropertyBinZfsDelISCSI.setLabelProperty("Tool : Delete ISCSI Volume");
+	zPropertyBinZfsDelISCSI.setType("noupdateable");
+	zPropertyBinZfsDelISCSI.setValue("");
+	zPropertyBinZfsDelISCSI.setPermitValue(null);
+	zProperties.put("binzfsdeliscsi", zPropertyBinZfsDelISCSI);
+	
+	List<Object> permitValueBinZfsCreateVol = new ArrayList<Object>();
+	zProperties zPropertyBinZfsCreateVol  = new zProperties();
+	permitValueBinZfsCreateVol.clear();
+	zPropertyBinZfsCreateVol.setNameProperty("binzfscreatevolume");
+	zPropertyBinZfsCreateVol.setLabelProperty("Tool : Create ZFS Volume");
+	zPropertyBinZfsCreateVol.setType("noupdateable");
+	zPropertyBinZfsCreateVol.setValue("");
+	zPropertyBinZfsCreateVol.setPermitValue(null);
+	zProperties.put("binzfscreatevolume", zPropertyBinZfsCreateVol);
+	
+	List<Object> permitValueBinZfsCreateFS = new ArrayList<Object>();
+	zProperties zPropertyBinZfsCreateFS  = new zProperties();
+	permitValueBinZfsCreateFS.clear();
+	zPropertyBinZfsCreateFS.setNameProperty("binzfscreatefilesystem");
+	zPropertyBinZfsCreateFS.setLabelProperty("Tool : Create ZFS FileSystem");
+	zPropertyBinZfsCreateFS.setType("noupdateable");
+	zPropertyBinZfsCreateFS.setValue("");
+	zPropertyBinZfsCreateFS.setPermitValue(null);
+	zProperties.put("binzfscreatefilesystem", zPropertyBinZfsCreateFS);
+	
+	List<Object> permitValueBinZfsDelFS = new ArrayList<Object>();
+	zProperties zPropertyBinZfsDelFS  = new zProperties();
+	permitValueBinZfsDelFS.clear();
+	zPropertyBinZfsDelFS.setNameProperty("binzfsdelfilesystem");
+	zPropertyBinZfsDelFS.setLabelProperty("Tool : Delete ZFS FileSystem");
+	zPropertyBinZfsDelFS.setType("noupdateable");
+	zPropertyBinZfsDelFS.setValue("");
+	zPropertyBinZfsDelFS.setPermitValue(null);
+	zProperties.put("binzfsdelfilesystem", zPropertyBinZfsDelFS);
+	
+	List<Object> permitValueBinZfsDelVolume = new ArrayList<Object>();
+	zProperties zPropertyBinZfsDelVolume  = new zProperties();
+	permitValueBinZfsDelVolume.clear();
+	zPropertyBinZfsDelVolume.setNameProperty("binzfsdelvolume");
+	zPropertyBinZfsDelVolume.setLabelProperty("Tool : Delete ZFS Volume");
+	zPropertyBinZfsDelVolume.setType("noupdateable");
+	zPropertyBinZfsDelVolume.setValue("");
+	zPropertyBinZfsDelVolume.setPermitValue(null);
+	zProperties.put("binzfsdelvolume", zPropertyBinZfsDelVolume);
+	
+	List<Object> permitValueBinGetDiskInfo = new ArrayList<Object>();
+	zProperties zPropertyBinGetDiskInfo  = new zProperties();
+	permitValueBinGetDiskInfo.clear();
+	zPropertyBinGetDiskInfo.setNameProperty("bingetdiskinfo");
+	zPropertyBinGetDiskInfo.setLabelProperty("Tool : Get Disk Informations");
+	zPropertyBinGetDiskInfo.setType("noupdateable");
+	zPropertyBinGetDiskInfo.setValue("");
+	zPropertyBinGetDiskInfo.setPermitValue(null);
+	zProperties.put("bingetdiskinfo", zPropertyBinGetDiskInfo);
+	
+	List<Object> permitValueBinZFSClone = new ArrayList<Object>();
+	zProperties zPropertyBinZFSClone  = new zProperties();
+	permitValueBinZFSClone.clear();
+	zPropertyBinZFSClone.setNameProperty("binzfsclone");
+	zPropertyBinZFSClone.setLabelProperty("Tool : ZFS Clone");
+	zPropertyBinZFSClone.setType("noupdateable");
+	zPropertyBinZFSClone.setValue("");
+	zPropertyBinZFSClone.setPermitValue(null);
+	zProperties.put("binzfsclone", zPropertyBinZFSClone);
+	
+	List<Object> permitValueBinZpoolGetState = new ArrayList<Object>();
+	zProperties zPropertyBinZpoolGetState  = new zProperties();
+	permitValueBinZpoolGetState.clear();
+	zPropertyBinZpoolGetState.setNameProperty("binzpoolgetstate");
+	zPropertyBinZpoolGetState.setLabelProperty("Tool : ZFS Clone");
+	zPropertyBinZpoolGetState.setType("noupdateable");
+	zPropertyBinZpoolGetState.setValue("");
+	zPropertyBinZpoolGetState.setPermitValue(null);
+	zProperties.put("binzpoolgetstate", zPropertyBinZpoolGetState);
+	
+	List<Object> permitValueBinGetConfReplica = new ArrayList<Object>();
+	zProperties zPropertyBinGetConfReplica  = new zProperties();
+	permitValueBinGetConfReplica.clear();
+	zPropertyBinGetConfReplica.setNameProperty("bingetconfreplica");
+	zPropertyBinGetConfReplica.setLabelProperty("Tool : ZFS Replication");
+	zPropertyBinGetConfReplica.setType("noupdateable");
+	zPropertyBinGetConfReplica.setValue("");
+	zPropertyBinGetConfReplica.setPermitValue(null);
+	zProperties.put("bingetconfreplica", zPropertyBinGetConfReplica);
+	
+	List<Object> permitValueBinEnableReplica = new ArrayList<Object>();
+	zProperties zPropertyBinEnableReplica  = new zProperties();
+	permitValueBinEnableReplica.clear();
+	zPropertyBinEnableReplica.setNameProperty("binzfsenablereplicas");
+	zPropertyBinEnableReplica.setLabelProperty("Tool :Enable ZFS Replication");
+	zPropertyBinEnableReplica.setType("noupdateable");
+	zPropertyBinEnableReplica.setValue("");
+	zPropertyBinEnableReplica.setPermitValue(null);
+	zProperties.put("binzfsenablereplicas", zPropertyBinEnableReplica);
+	
+	List<Object> permitValueBinDisableReplica = new ArrayList<Object>();
+	zProperties zPropertyBinDisableReplica  = new zProperties();
+	permitValueBinDisableReplica.clear();
+	zPropertyBinDisableReplica.setNameProperty("binzfsdisablereplicas");
+	zPropertyBinDisableReplica.setLabelProperty("Tool :Disable ZFS Replication");
+	zPropertyBinDisableReplica.setType("noupdateable");
+	zPropertyBinDisableReplica.setValue("");
+	zPropertyBinDisableReplica.setPermitValue(null);
+	zProperties.put("binzfsdisablereplicas", zPropertyBinDisableReplica);
+	
+	List<Object> permitValueBinReplica = new ArrayList<Object>();
+	zProperties zPropertyBinReplica  = new zProperties();
+	permitValueBinReplica.clear();
+	zPropertyBinReplica.setNameProperty("binzfsreplica");
+	zPropertyBinReplica.setLabelProperty("Tool : Binary ZFS Replication");
+	zPropertyBinReplica.setType("noupdateable");
+	zPropertyBinReplica.setValue("");
+	zPropertyBinReplica.setPermitValue(null);
+	zProperties.put("binzfsreplica", zPropertyBinReplica);
+	
+	/*List<Object> permitValueBinDisableReplica = new ArrayList<Object>();
+	zProperties zPropertyBinDisableReplica  = new zProperties();
+	permitValueBinDisableReplica.clear();
+	zPropertyBinDisableReplica.setNameProperty("binzfsdisablereplicas");
+	zPropertyBinDisableReplica.setLabelProperty("Tool :Disable ZFS Replication");
+	zPropertyBinDisableReplica.setType("noupdateable");
+	zPropertyBinDisableReplica.setValue("");
+	zPropertyBinDisableReplica.setPermitValue(null);
+	zProperties.put("binzfsdisablereplicas", zPropertyBinDisableReplica);*/
+	
+	}
+	
+	
+	public boolean add(String fileName){
+		
+		try {
+			Properties prop = new Properties();
+			String[] keysProp = (String[])this.zProperties.keySet().toArray(new String[0]);
+			Arrays.sort(keysProp);
+			for (int i = 0; i < keysProp.length; i++) {
+				String keyProp = keysProp[i];
+				log.debug("keyProp :"+keyProp);
+				prop.setProperty(keyProp, this.zProperties.get(keyProp).getValue());	
+			}
+			prop.store(new FileOutputStream(fileName), null);
+		} catch (FileNotFoundException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			return false;
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			return false;
+		}
+		return true;
+	}
+	
+	public boolean load(String fileName){
+		try {
+			Properties prop = new Properties();
+    		prop.load(new FileInputStream(fileName));
+			String[] keysProp = (String[])this.zProperties.keySet().toArray(new String[0]);
+			Arrays.sort(keysProp);
+			for (int i = 0; i < keysProp.length; i++) {
+				String keyProp = keysProp[i];	
+				if ( prop.containsKey(keyProp)){
+					this.zProperties.get(keyProp).setValue(prop.getProperty(keyProp));	
+				}else{
+					this.zProperties.get(keyProp).setValue("");
+				}
+					
+			}
+		} catch (FileNotFoundException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			return false;
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			return false;
+		}
+		return true;
+	}
+	
+	public boolean remove(String fileName){
+		File f = new File(fileName);
+		if (f.exists()){
+			if (f.delete()){
+				return true;
+			}
+		}
+		return false;
+	}
+}

Property changes on: src/gZFS/zserver.java
___________________________________________________________________
Added: svn:keywords
   + Id

Index: src/log4j.properties
===================================================================
--- src/log4j.properties	(revision 0)
+++ src/log4j.properties	(revision 14)
@@ -0,0 +1,47 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+# An example log4j configuration file that outputs to System.out.  The
+# output information consists of relative time, log level, thread
+# name, logger name, nested diagnostic context and the message in that
+# order.
+
+# For the general syntax of property based configuration files see the
+# documenation of org.apache.log4j.PropertyConfigurator.
+
+log4j.rootLogger=INFO, A1, A2
+log4j.appender.A2.append=false
+log4j.appender.A2=org.apache.log4j.RollingFileAppender
+log4j.appender.A2.File=${user.home}/gZFS.log
+
+# A1 is set to be a ConsoleAppender which outputs to System.out. 
+log4j.appender.A1=org.apache.log4j.ConsoleAppender
+
+# A1 uses PatternLayout.
+log4j.appender.A1.layout=org.apache.log4j.PatternLayout
+log4j.appender.A2.layout=org.apache.log4j.PatternLayout
+
+# The conversion pattern uses format specifiers. You might want to
+# change the pattern an watch the output format change.
+log4j.appender.A1.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n
+log4j.appender.A2.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n
+
+# In this example, we are not really interested in INNER loop or SWAP
+# messages. See the effects of uncommenting and changing the levels of
+# the following loggers.
+# log4j.logger.org.apache.log4j.examples.SortAlgo.INNER=WARN
+# log4j.logger.org.apache.log4j.examples.SortAlgo.SWAP=WARN
+ 
\ No newline at end of file

Property changes on: src/log4j.properties
___________________________________________________________________
Added: svn:keywords
   + Id

Index: swtgraphics2d.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: swtgraphics2d.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: servlet.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: servlet.jar
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:mime-type
   + application/octet-stream

Index: org.eclipse.wb.swt.widgets.baseline_1.3.0.r37x201202010053.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: org.eclipse.wb.swt.widgets.baseline_1.3.0.r37x201202010053.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: jcommon-1.0.18.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: jcommon-1.0.18.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: jfreechart-1.0.15-experimental.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: jfreechart-1.0.15-experimental.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: junit.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: junit.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

Index: org.eclipse.swt.win32.win32.x86_3.7.0.v3735b.jar
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: org.eclipse.swt.win32.win32.x86_3.7.0.v3735b.jar
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream
Added: svn:keywords
   + Id

