Statistiques
| Révision :

root / src / gZFS / guiTrt.java @ 53

Historique | Voir | Annoter | Télécharger (7,3 ko)

1 53 kreverch
/*******************************************************************
2 53 kreverch
 *
3 53 kreverch
 * Copyright (C) 2013 Kevin Reverchon
4 53 kreverch
 * This file/program is part of gZFS free software
5 53 kreverch
 * See COPYING file for details
6 53 kreverch
 *
7 53 kreverch
 *******************************************************************/
8 14 kreverch
package gZFS;
9 14 kreverch
10 14 kreverch
import java.util.Arrays;
11 14 kreverch
import java.util.Collections;
12 14 kreverch
import java.util.Hashtable;
13 14 kreverch
14 14 kreverch
import org.jfree.chart.ChartFactory;
15 14 kreverch
import org.jfree.chart.JFreeChart;
16 14 kreverch
import org.jfree.chart.plot.PiePlot3D;
17 14 kreverch
import org.jfree.data.general.DefaultPieDataset;
18 14 kreverch
import org.jfree.data.general.PieDataset;
19 14 kreverch
import org.jfree.util.Log;
20 14 kreverch
import org.jfree.util.Rotation;
21 14 kreverch
22 14 kreverch
public class guiTrt {
23 14 kreverch
24 14 kreverch
25 14 kreverch
26 14 kreverch
        private float zfsSize = 0;
27 14 kreverch
        private float zfsUsedByData = 0;
28 14 kreverch
        private float zfsUsedBySnapshots = 0;
29 14 kreverch
        private float zfsFree=0;
30 14 kreverch
        private float zfsFreePourcent=0;
31 14 kreverch
        private String Unit = "";
32 14 kreverch
33 14 kreverch
        public void formatChartValue(String totalSize, String usedByData, String usedBySnapshots){
34 14 kreverch
35 14 kreverch
                setUnit("");
36 14 kreverch
                setZfsSize(0);
37 14 kreverch
                setZfsUsedByData(0);
38 14 kreverch
                setZfsUsedBySnapshots(0);
39 14 kreverch
                setZfsFree(0);
40 14 kreverch
                setZfsFreePourcent(0);
41 14 kreverch
42 14 kreverch
43 14 kreverch
                if ( !totalSize.equalsIgnoreCase("") && ! totalSize.equalsIgnoreCase(null) && !usedByData.equalsIgnoreCase("") && !usedByData.equalsIgnoreCase(null) && !usedBySnapshots.equalsIgnoreCase("") && !usedBySnapshots.equalsIgnoreCase(null)){
44 23 kreverch
                        totalSize = totalSize.replace(",",".");
45 23 kreverch
                        usedByData = usedByData.replace(",", ".");
46 23 kreverch
                        usedBySnapshots = usedBySnapshots.replace("," , ".");
47 14 kreverch
                        if ( totalSize.contains("T")){
48 14 kreverch
                                setUnit("T");
49 14 kreverch
                                setZfsSize(Float.valueOf(totalSize.substring(0, (totalSize.length()-1))));
50 14 kreverch
                                setZfsFree(getZfsSize());
51 14 kreverch
52 14 kreverch
                                //Set Pourcent Data Size with the good Unit
53 14 kreverch
                                if (usedByData.contains("T")){
54 14 kreverch
                                        setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1))));
55 14 kreverch
                                        setZfsUsedByData((Float.valueOf(usedByData.substring(0, (usedByData.length()-1))) *100)/getZfsSize());
56 14 kreverch
                                }else{
57 14 kreverch
                                        if (usedByData.contains("G")){
58 14 kreverch
                                                setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024);
59 14 kreverch
                                                setZfsUsedByData(( (Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024) *100)/getZfsSize());
60 14 kreverch
                                        }else{
61 14 kreverch
                                                if (usedByData.contains("M")){
62 14 kreverch
                                                        setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1048576);
63 14 kreverch
                                                        setZfsUsedByData(( (Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1048576) *100)/getZfsSize());
64 14 kreverch
                                                }
65 14 kreverch
                                        }
66 14 kreverch
                                }
67 14 kreverch
68 14 kreverch
                                //Set Pourcent Snapshot Size with the good Unit
69 14 kreverch
                                if (usedBySnapshots.contains("T")){
70 14 kreverch
                                        setZfsUsedBySnapshots((Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1))) *100)/getZfsSize());
71 14 kreverch
                                }else{
72 14 kreverch
                                        if (usedBySnapshots.contains("G")){
73 14 kreverch
                                                setZfsUsedBySnapshots(( (Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1024) *100)/getZfsSize());
74 14 kreverch
                                        }else{
75 14 kreverch
                                                if (usedBySnapshots.contains("M")){
76 14 kreverch
                                                        setZfsUsedBySnapshots(( (Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1048576) *100)/getZfsSize());
77 14 kreverch
                                                }
78 14 kreverch
                                        }
79 14 kreverch
                                }
80 14 kreverch
81 14 kreverch
                        }
82 14 kreverch
83 14 kreverch
                        if ( totalSize.contains("G")){
84 14 kreverch
                                setUnit("G");
85 14 kreverch
                                setZfsSize(Float.valueOf(totalSize.substring(0, (totalSize.length()-1))));
86 14 kreverch
                                setZfsFree(getZfsSize());
87 14 kreverch
                                //Set Pourcent Data Size with the good Unit
88 14 kreverch
                                if (usedByData.contains("G")){
89 14 kreverch
                                        setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1))));
90 14 kreverch
                                        setZfsUsedByData(( Float.valueOf(usedByData.substring(0, (usedByData.length()-1))) *100)/getZfsSize());
91 14 kreverch
                                }else{
92 14 kreverch
                                        if (usedByData.contains("M")){
93 14 kreverch
                                                setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024);
94 14 kreverch
                                                setZfsUsedByData(( (Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024) *100)/getZfsSize());
95 14 kreverch
                                        }
96 14 kreverch
                                }
97 14 kreverch
                                //Set Pourcent Snapshot Size with the good Unit
98 14 kreverch
                                if (usedBySnapshots.contains("G")){
99 14 kreverch
                                        setZfsFree(getZfsFree() - Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1))));
100 14 kreverch
                                        setZfsUsedBySnapshots(( Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1))) *100)/getZfsSize());
101 14 kreverch
                                }else{
102 14 kreverch
                                        if (usedBySnapshots.contains("M")){
103 14 kreverch
                                                setZfsFree(getZfsFree() - Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1024);
104 14 kreverch
                                                setZfsUsedBySnapshots(( (Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1024) *100)/getZfsSize());
105 14 kreverch
                                        }
106 14 kreverch
                                }
107 14 kreverch
108 14 kreverch
                        }
109 14 kreverch
                        setZfsFreePourcent(100-getZfsUsedByData()-getZfsUsedBySnapshots());
110 14 kreverch
                        System.out.println("zfsUsedByData :"+getZfsUsedByData()+" "+"zfsUsedBySnapshots : "+getZfsUsedBySnapshots()+" zfsFree : "+getZfsFree());
111 14 kreverch
112 14 kreverch
                }
113 14 kreverch
        }
114 14 kreverch
115 14 kreverch
        public float formatChartDataInPourcent(String val2convert, String totalSize){
116 14 kreverch
                if ( !val2convert.equalsIgnoreCase("") && val2convert.equalsIgnoreCase(null)&& totalSize.equalsIgnoreCase("")&&totalSize.equalsIgnoreCase(null)){
117 14 kreverch
                        return (Float.valueOf(val2convert.substring(0, (val2convert.length()-1))) *100)/Float.valueOf(totalSize);
118 14 kreverch
                }
119 14 kreverch
                return 0;
120 14 kreverch
        }
121 14 kreverch
122 14 kreverch
        public float dataInPourcent(float val2convert, float totalSize){
123 14 kreverch
                return  (val2convert*100)/(totalSize);
124 14 kreverch
        }
125 14 kreverch
126 14 kreverch
        public float calculFree(float usedSize, float totalSize){
127 14 kreverch
                return totalSize - usedSize;
128 14 kreverch
        }
129 14 kreverch
130 14 kreverch
131 14 kreverch
132 14 kreverch
        public PieDataset createDataset(Hashtable<String, Float> dataCharset2) {
133 14 kreverch
                final DefaultPieDataset result = new DefaultPieDataset();
134 14 kreverch
                String[] keystitle = (String[]) dataCharset2.keySet().toArray(new String[0]);
135 14 kreverch
136 14 kreverch
                Arrays.sort(keystitle, Collections.reverseOrder());
137 14 kreverch
                for(String keytitle : keystitle) {
138 14 kreverch
139 14 kreverch
                        result.setValue(keytitle, dataCharset2.get(keytitle));
140 14 kreverch
                }
141 14 kreverch
                return result;
142 14 kreverch
        }
143 14 kreverch
144 14 kreverch
        public org.jfree.chart.JFreeChart createChart(final PieDataset dataset, final String title) {
145 14 kreverch
                final JFreeChart chart = ChartFactory.createPieChart3D(title, dataset, true, true, false);
146 14 kreverch
147 14 kreverch
                final PiePlot3D plot = (PiePlot3D) chart.getPlot();
148 14 kreverch
149 14 kreverch
                plot.setStartAngle(290);
150 14 kreverch
                plot.setDirection(Rotation.CLOCKWISE);
151 14 kreverch
                plot.setLabelGenerator(null);
152 14 kreverch
                //plot.setForegroundAlpha(0.8f);
153 14 kreverch
154 14 kreverch
                return chart;
155 14 kreverch
        }
156 14 kreverch
157 14 kreverch
        /**
158 14 kreverch
         * @return the zfsSize
159 14 kreverch
         */
160 14 kreverch
        public float getZfsSize() {
161 14 kreverch
                return zfsSize;
162 14 kreverch
        }
163 14 kreverch
164 14 kreverch
        /**
165 14 kreverch
         * @param zfsSize the zfsSize to set
166 14 kreverch
         */
167 14 kreverch
        public void setZfsSize(float zfsSize) {
168 14 kreverch
                this.zfsSize = zfsSize;
169 14 kreverch
        }
170 14 kreverch
171 14 kreverch
        /**
172 14 kreverch
         * @return the zfsUsedByData
173 14 kreverch
         */
174 14 kreverch
        public float getZfsUsedByData() {
175 14 kreverch
                return zfsUsedByData;
176 14 kreverch
        }
177 14 kreverch
178 14 kreverch
        /**
179 14 kreverch
         * @param zfsUsedByData the zfsUsedByData to set
180 14 kreverch
         */
181 14 kreverch
        public void setZfsUsedByData(float zfsUsedByData) {
182 14 kreverch
                this.zfsUsedByData = zfsUsedByData;
183 14 kreverch
        }
184 14 kreverch
185 14 kreverch
        /**
186 14 kreverch
         * @return the zfsUsedBySnapshots
187 14 kreverch
         */
188 14 kreverch
        public float getZfsUsedBySnapshots() {
189 14 kreverch
                return zfsUsedBySnapshots;
190 14 kreverch
        }
191 14 kreverch
192 14 kreverch
        /**
193 14 kreverch
         * @param zfsUsedBySnapshots the zfsUsedBySnapshots to set
194 14 kreverch
         */
195 14 kreverch
        public void setZfsUsedBySnapshots(float zfsUsedBySnapshots) {
196 14 kreverch
                this.zfsUsedBySnapshots = zfsUsedBySnapshots;
197 14 kreverch
        }
198 14 kreverch
199 14 kreverch
        /**
200 14 kreverch
         * @return the zfsFree
201 14 kreverch
         */
202 14 kreverch
        public float getZfsFree() {
203 14 kreverch
                return zfsFree;
204 14 kreverch
        }
205 14 kreverch
206 14 kreverch
        /**
207 14 kreverch
         * @param zfsFree the zfsFree to set
208 14 kreverch
         */
209 14 kreverch
        public void setZfsFree(float zfsFree) {
210 14 kreverch
                this.zfsFree = zfsFree;
211 14 kreverch
        }
212 14 kreverch
213 14 kreverch
        /**
214 14 kreverch
         * @return the zfsFreePourcent
215 14 kreverch
         */
216 14 kreverch
        public float getZfsFreePourcent() {
217 14 kreverch
                return zfsFreePourcent;
218 14 kreverch
        }
219 14 kreverch
220 14 kreverch
        /**
221 14 kreverch
         * @param zfsFreePourcent the zfsFreePourcent to set
222 14 kreverch
         */
223 14 kreverch
        public void setZfsFreePourcent(float zfsFreePourcent) {
224 14 kreverch
                this.zfsFreePourcent = zfsFreePourcent;
225 14 kreverch
        }
226 14 kreverch
227 14 kreverch
        /**
228 14 kreverch
         * @return the unit
229 14 kreverch
         */
230 14 kreverch
        public String getUnit() {
231 14 kreverch
                return Unit;
232 14 kreverch
        }
233 14 kreverch
234 14 kreverch
        /**
235 14 kreverch
         * @param unit the unit to set
236 14 kreverch
         */
237 14 kreverch
        public void setUnit(String unit) {
238 14 kreverch
                Unit = unit;
239 14 kreverch
        }
240 14 kreverch
241 14 kreverch
242 14 kreverch
}