Statistiques
| Révision :

root / src / gZFS / guiTrt.java @ 24

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

1
package gZFS;
2

    
3
import java.util.Arrays;
4
import java.util.Collections;
5
import java.util.Hashtable;
6

    
7
import org.jfree.chart.ChartFactory;
8
import org.jfree.chart.JFreeChart;
9
import org.jfree.chart.plot.PiePlot3D;
10
import org.jfree.data.general.DefaultPieDataset;
11
import org.jfree.data.general.PieDataset;
12
import org.jfree.util.Log;
13
import org.jfree.util.Rotation;
14

    
15
public class guiTrt {
16

    
17

    
18

    
19
        private float zfsSize = 0;
20
        private float zfsUsedByData = 0;
21
        private float zfsUsedBySnapshots = 0;
22
        private float zfsFree=0;
23
        private float zfsFreePourcent=0;
24
        private String Unit = "";
25

    
26
        public void formatChartValue(String totalSize, String usedByData, String usedBySnapshots){
27

    
28
                setUnit("");
29
                setZfsSize(0);
30
                setZfsUsedByData(0);
31
                setZfsUsedBySnapshots(0);
32
                setZfsFree(0);
33
                setZfsFreePourcent(0);
34

    
35

    
36
                if ( !totalSize.equalsIgnoreCase("") && ! totalSize.equalsIgnoreCase(null) && !usedByData.equalsIgnoreCase("") && !usedByData.equalsIgnoreCase(null) && !usedBySnapshots.equalsIgnoreCase("") && !usedBySnapshots.equalsIgnoreCase(null)){
37
                        totalSize = totalSize.replace(",",".");
38
                        usedByData = usedByData.replace(",", ".");
39
                        usedBySnapshots = usedBySnapshots.replace("," , ".");
40
                        if ( totalSize.contains("T")){
41
                                setUnit("T");
42
                                setZfsSize(Float.valueOf(totalSize.substring(0, (totalSize.length()-1))));
43
                                setZfsFree(getZfsSize());
44

    
45
                                //Set Pourcent Data Size with the good Unit
46
                                if (usedByData.contains("T")){
47
                                        setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1))));
48
                                        setZfsUsedByData((Float.valueOf(usedByData.substring(0, (usedByData.length()-1))) *100)/getZfsSize());
49
                                }else{
50
                                        if (usedByData.contains("G")){
51
                                                setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024);
52
                                                setZfsUsedByData(( (Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024) *100)/getZfsSize());
53
                                        }else{
54
                                                if (usedByData.contains("M")){
55
                                                        setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1048576);
56
                                                        setZfsUsedByData(( (Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1048576) *100)/getZfsSize());
57
                                                }
58
                                        }
59
                                }
60

    
61
                                //Set Pourcent Snapshot Size with the good Unit
62
                                if (usedBySnapshots.contains("T")){
63
                                        setZfsUsedBySnapshots((Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1))) *100)/getZfsSize());
64
                                }else{
65
                                        if (usedBySnapshots.contains("G")){
66
                                                setZfsUsedBySnapshots(( (Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1024) *100)/getZfsSize());
67
                                        }else{
68
                                                if (usedBySnapshots.contains("M")){
69
                                                        setZfsUsedBySnapshots(( (Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1048576) *100)/getZfsSize());
70
                                                }
71
                                        }
72
                                }
73

    
74
                        }
75

    
76
                        if ( totalSize.contains("G")){
77
                                setUnit("G");
78
                                setZfsSize(Float.valueOf(totalSize.substring(0, (totalSize.length()-1))));
79
                                setZfsFree(getZfsSize());
80
                                //Set Pourcent Data Size with the good Unit
81
                                if (usedByData.contains("G")){
82
                                        setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1))));
83
                                        setZfsUsedByData(( Float.valueOf(usedByData.substring(0, (usedByData.length()-1))) *100)/getZfsSize());
84
                                }else{
85
                                        if (usedByData.contains("M")){
86
                                                setZfsFree(getZfsFree() - Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024);
87
                                                setZfsUsedByData(( (Float.valueOf(usedByData.substring(0, (usedByData.length()-1)))/1024) *100)/getZfsSize());
88
                                        }
89
                                }
90
                                //Set Pourcent Snapshot Size with the good Unit
91
                                if (usedBySnapshots.contains("G")){
92
                                        setZfsFree(getZfsFree() - Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1))));
93
                                        setZfsUsedBySnapshots(( Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1))) *100)/getZfsSize());
94
                                }else{
95
                                        if (usedBySnapshots.contains("M")){
96
                                                setZfsFree(getZfsFree() - Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1024);
97
                                                setZfsUsedBySnapshots(( (Float.valueOf(usedBySnapshots.substring(0, (usedBySnapshots.length()-1)))/1024) *100)/getZfsSize());
98
                                        }
99
                                }
100

    
101
                        }
102
                        setZfsFreePourcent(100-getZfsUsedByData()-getZfsUsedBySnapshots());
103
                        System.out.println("zfsUsedByData :"+getZfsUsedByData()+" "+"zfsUsedBySnapshots : "+getZfsUsedBySnapshots()+" zfsFree : "+getZfsFree());
104

    
105
                }
106
        }
107
        
108
        public float formatChartDataInPourcent(String val2convert, String totalSize){
109
                if ( !val2convert.equalsIgnoreCase("") && val2convert.equalsIgnoreCase(null)&& totalSize.equalsIgnoreCase("")&&totalSize.equalsIgnoreCase(null)){
110
                        return (Float.valueOf(val2convert.substring(0, (val2convert.length()-1))) *100)/Float.valueOf(totalSize);        
111
                }
112
                return 0;
113
        }
114

    
115
        public float dataInPourcent(float val2convert, float totalSize){
116
                return  (val2convert*100)/(totalSize);
117
        }
118
        
119
        public float calculFree(float usedSize, float totalSize){
120
                return totalSize - usedSize;
121
        }
122
        
123
        
124

    
125
        public PieDataset createDataset(Hashtable<String, Float> dataCharset2) {  
126
                final DefaultPieDataset result = new DefaultPieDataset();  
127
                String[] keystitle = (String[]) dataCharset2.keySet().toArray(new String[0]);
128

    
129
                Arrays.sort(keystitle, Collections.reverseOrder());
130
                for(String keytitle : keystitle) {
131

    
132
                        result.setValue(keytitle, dataCharset2.get(keytitle));  
133
                }
134
                return result;  
135
        }  
136

    
137
        public org.jfree.chart.JFreeChart createChart(final PieDataset dataset, final String title) {  
138
                final JFreeChart chart = ChartFactory.createPieChart3D(title, dataset, true, true, false);  
139

    
140
                final PiePlot3D plot = (PiePlot3D) chart.getPlot(); 
141

    
142
                plot.setStartAngle(290);  
143
                plot.setDirection(Rotation.CLOCKWISE);  
144
                plot.setLabelGenerator(null);
145
                //plot.setForegroundAlpha(0.8f);  
146

    
147
                return chart;  
148
        }
149

    
150
        /**
151
         * @return the zfsSize
152
         */
153
        public float getZfsSize() {
154
                return zfsSize;
155
        }
156

    
157
        /**
158
         * @param zfsSize the zfsSize to set
159
         */
160
        public void setZfsSize(float zfsSize) {
161
                this.zfsSize = zfsSize;
162
        }
163

    
164
        /**
165
         * @return the zfsUsedByData
166
         */
167
        public float getZfsUsedByData() {
168
                return zfsUsedByData;
169
        }
170

    
171
        /**
172
         * @param zfsUsedByData the zfsUsedByData to set
173
         */
174
        public void setZfsUsedByData(float zfsUsedByData) {
175
                this.zfsUsedByData = zfsUsedByData;
176
        }
177

    
178
        /**
179
         * @return the zfsUsedBySnapshots
180
         */
181
        public float getZfsUsedBySnapshots() {
182
                return zfsUsedBySnapshots;
183
        }
184

    
185
        /**
186
         * @param zfsUsedBySnapshots the zfsUsedBySnapshots to set
187
         */
188
        public void setZfsUsedBySnapshots(float zfsUsedBySnapshots) {
189
                this.zfsUsedBySnapshots = zfsUsedBySnapshots;
190
        }
191

    
192
        /**
193
         * @return the zfsFree
194
         */
195
        public float getZfsFree() {
196
                return zfsFree;
197
        }
198

    
199
        /**
200
         * @param zfsFree the zfsFree to set
201
         */
202
        public void setZfsFree(float zfsFree) {
203
                this.zfsFree = zfsFree;
204
        }
205

    
206
        /**
207
         * @return the zfsFreePourcent
208
         */
209
        public float getZfsFreePourcent() {
210
                return zfsFreePourcent;
211
        }
212

    
213
        /**
214
         * @param zfsFreePourcent the zfsFreePourcent to set
215
         */
216
        public void setZfsFreePourcent(float zfsFreePourcent) {
217
                this.zfsFreePourcent = zfsFreePourcent;
218
        }
219

    
220
        /**
221
         * @return the unit
222
         */
223
        public String getUnit() {
224
                return Unit;
225
        }
226

    
227
        /**
228
         * @param unit the unit to set
229
         */
230
        public void setUnit(String unit) {
231
                Unit = unit;
232
        }  
233

    
234

    
235
}