1 | /* |
---|
2 | * Olcut.java |
---|
3 | * |
---|
4 | * Created on December 20, 2006, 1:45 PM |
---|
5 | * (4.12.06 tarihli SpringDaoDeneme çalışmasından derlenmiştir) |
---|
6 | * |
---|
7 | * Ven - Ayar Yerine Gelenek veritabanı erişim nesnesi |
---|
8 | */ |
---|
9 | package net.fmg.ven; |
---|
10 | |
---|
11 | import java.util.HashMap; |
---|
12 | import java.util.HashSet; |
---|
13 | import java.util.List; |
---|
14 | import java.util.Map; |
---|
15 | import java.util.Set; |
---|
16 | import net.fmg.ven.arac.Cevir; |
---|
17 | |
---|
18 | /** |
---|
19 | * Ven için ölçütlerin belirlenebileceği sınıf |
---|
20 | * @author Fatih Mehmet Güler |
---|
21 | */ |
---|
22 | public class Olcut { |
---|
23 | private String metin; |
---|
24 | private Map parametreler; |
---|
25 | private Set baglaclar; |
---|
26 | |
---|
27 | /** |
---|
28 | * Yeni ölçüt |
---|
29 | */ |
---|
30 | public Olcut() { |
---|
31 | this.metin = ""; |
---|
32 | this.parametreler = new HashMap(); |
---|
33 | this.baglaclar = new HashSet(); |
---|
34 | //{"and", "or", "=", "<>", "<", ">"} |
---|
35 | } |
---|
36 | |
---|
37 | /** |
---|
38 | * YAPILMADI |
---|
39 | */ |
---|
40 | public Olcut ekle(Olcut olcut) { |
---|
41 | return null; |
---|
42 | } |
---|
43 | |
---|
44 | /** |
---|
45 | * YAPILMADI |
---|
46 | */ |
---|
47 | public Olcut ekle(List olcutler) { |
---|
48 | return null; |
---|
49 | } |
---|
50 | |
---|
51 | /** |
---|
52 | * YAPILMADI |
---|
53 | */ |
---|
54 | public Olcut ve() { |
---|
55 | return null; |
---|
56 | } |
---|
57 | |
---|
58 | /** |
---|
59 | * koşul ekle |
---|
60 | */ |
---|
61 | public Olcut ekle(String kosul) { |
---|
62 | this.metin += " " + kosul; |
---|
63 | return this; |
---|
64 | } |
---|
65 | |
---|
66 | /** |
---|
67 | * koşullarda kullanılan parametreleri ekle |
---|
68 | */ |
---|
69 | public Olcut ekle(String parametre, Object nesne) { |
---|
70 | this.parametreler.put(parametre, nesne); |
---|
71 | return this; |
---|
72 | } |
---|
73 | |
---|
74 | /** |
---|
75 | * koşullarda kullanılan parametreleri tümden ekle |
---|
76 | */ |
---|
77 | public Olcut ekle(Map parametreler) { |
---|
78 | this.parametreler.putAll(parametreler); |
---|
79 | return this; |
---|
80 | } |
---|
81 | |
---|
82 | public String olcutleriAl() { |
---|
83 | //((1=1) and ((1=1) and (musteri_numuneler_numune_sahibi.rapor_tarihi is null) and (musteri.no = 4))) |
---|
84 | //Musteri.numuneler.deneyler.deneyTip.ad like :p1 |
---|
85 | String sonuc = ""; |
---|
86 | metin = metin.replaceAll("\\(", "\\( "); |
---|
87 | metin = metin.replaceAll("\\)", " \\)"); |
---|
88 | String[] parcalar = metin.split(" "); |
---|
89 | for (int i = 0; i < parcalar.length; i++) { |
---|
90 | if (!parcalar[i].startsWith(":") && parcalar[i].indexOf(".") >= 0) { |
---|
91 | int sonNokta = parcalar[i].lastIndexOf('.'); |
---|
92 | sonuc += " "; |
---|
93 | int u = parcalar[i].length(); |
---|
94 | sonuc += Cevir.vt(parcalar[i].substring(0, sonNokta).replace('.', '_')); |
---|
95 | sonuc += Cevir.vt(parcalar[i].substring(sonNokta, u)); |
---|
96 | } else { |
---|
97 | sonuc += " " + parcalar[i]; |
---|
98 | } |
---|
99 | } |
---|
100 | return sonuc; |
---|
101 | } |
---|
102 | |
---|
103 | public Map parametreler() { |
---|
104 | return this.parametreler; |
---|
105 | } |
---|
106 | |
---|
107 | public String toString() { |
---|
108 | return olcutleriAl() + " " + this.parametreler; |
---|
109 | } |
---|
110 | } |
---|