Statistiques
| Révision :

root / src / gZFS / guiTrt.java @ 21

Historique | Voir | Annoter | Télécharger (6,89 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

    
38
                        if ( totalSize.contains("T")){
39
                                setUnit("T");
40
                                setZfsSize(Float.valueOf(totalSize.substring(0, (totalSize.length()-1))));
41
                                setZfsFree(getZfsSize());
42

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

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

    
72
                        }
73

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

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

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

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

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

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

    
130
                        result.setValue(keytitle, dataCharset2.get(keytitle));  
131
                }
132
                return result;  
133
        }  
134

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

    
138
                final PiePlot3D plot = (PiePlot3D) chart.getPlot(); 
139

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

    
145
                return chart;  
146
        }
147

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

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

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

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

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

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

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

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

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

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

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

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

    
232

    
233
}