aboutsummaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--java/FileExample.java12
-rw-r--r--java/com/xagasoft/gats/GatsDictionary.java28
-rw-r--r--java/com/xagasoft/gats/KeyNotFoundException.java23
3 files changed, 55 insertions, 8 deletions
diff --git a/java/FileExample.java b/java/FileExample.java
index f85f88d..6f180d9 100644
--- a/java/FileExample.java
+++ b/java/FileExample.java
@@ -73,6 +73,14 @@ class FileExample
73 // the string object yourself. 73 // the string object yourself.
74 System.out.println("Sub string: " + new String( 74 System.out.println("Sub string: " + new String(
75 root.getDict("Dictionary").getString("name") ) ); 75 root.getDict("Dictionary").getString("name") ) );
76
77 root.get("aoeu");
78 root.getDict("aoeu");
79 root.getList("aoeu");
80 root.getInt("aoeu");
81 root.getFloat("aoeu");
82 root.getBool("aoeu");
83 root.getString("aoeu");
76 } 84 }
77 catch( FileNotFoundException e ) 85 catch( FileNotFoundException e )
78 { 86 {
@@ -82,6 +90,10 @@ class FileExample
82 { 90 {
83 System.out.println("Error reading data."); 91 System.out.println("Error reading data.");
84 } 92 }
93 catch( KeyNotFoundException e )
94 {
95 System.out.println("Key not found.");
96 }
85 } 97 }
86 98
87 public static void main( String args[] ) 99 public static void main( String args[] )
diff --git a/java/com/xagasoft/gats/GatsDictionary.java b/java/com/xagasoft/gats/GatsDictionary.java
index 654dc6c..3517b68 100644
--- a/java/com/xagasoft/gats/GatsDictionary.java
+++ b/java/com/xagasoft/gats/GatsDictionary.java
@@ -147,9 +147,12 @@ public class GatsDictionary extends GatsObject implements Map<String,GatsObject>
147 * key specified does not appear in the GatsDictionary or is not the correct 147 * key specified does not appear in the GatsDictionary or is not the correct
148 * type you will get the expected exception. 148 * type you will get the expected exception.
149 */ 149 */
150 public long getInt( String key ) 150 public long getInt( String key ) throws KeyNotFoundException
151 { 151 {
152 return ((GatsInteger)hValue.get( key )).getValue(); 152 GatsInteger ret = (GatsInteger)hValue.get( key );
153 if( ret == null )
154 throw new KeyNotFoundException( this, key );
155 return ret.getValue();
153 } 156 }
154 157
155 /** 158 /**
@@ -158,9 +161,12 @@ public class GatsDictionary extends GatsObject implements Map<String,GatsObject>
158 * key specified does not appear in the GatsDictionary or is not the correct 161 * key specified does not appear in the GatsDictionary or is not the correct
159 * type you will get the expected exception. 162 * type you will get the expected exception.
160 */ 163 */
161 public double getFloat( String key ) 164 public double getFloat( String key ) throws KeyNotFoundException
162 { 165 {
163 return ((GatsFloat)hValue.get( key )).getValue(); 166 GatsFloat ret = (GatsFloat)hValue.get( key );
167 if( ret == null )
168 throw new KeyNotFoundException( this, key );
169 return ret.getValue();
164 } 170 }
165 171
166 /** 172 /**
@@ -169,9 +175,12 @@ public class GatsDictionary extends GatsObject implements Map<String,GatsObject>
169 * key specified does not appear in the GatsDictionary or is not the correct 175 * key specified does not appear in the GatsDictionary or is not the correct
170 * type you will get the expected exception. 176 * type you will get the expected exception.
171 */ 177 */
172 public boolean getBool( String key ) 178 public boolean getBool( String key ) throws KeyNotFoundException
173 { 179 {
174 return ((GatsBoolean)hValue.get( key )).getValue(); 180 GatsBoolean ret = (GatsBoolean)hValue.get( key );
181 if( ret == null )
182 throw new KeyNotFoundException( this, key );
183 return ret.getValue();
175 } 184 }
176 185
177 /** 186 /**
@@ -180,9 +189,12 @@ public class GatsDictionary extends GatsObject implements Map<String,GatsObject>
180 * key specified does not appear in the GatsDictionary or is not the correct 189 * key specified does not appear in the GatsDictionary or is not the correct
181 * type you will get the expected exception. 190 * type you will get the expected exception.
182 */ 191 */
183 public byte[] getString( String key ) 192 public byte[] getString( String key ) throws KeyNotFoundException
184 { 193 {
185 return ((GatsString)hValue.get( key )).getValue(); 194 GatsString ret = (GatsString)hValue.get( key );
195 if( ret == null )
196 throw new KeyNotFoundException( this, key );
197 return ret.getValue();
186 } 198 }
187 199
188 /** 200 /**
diff --git a/java/com/xagasoft/gats/KeyNotFoundException.java b/java/com/xagasoft/gats/KeyNotFoundException.java
new file mode 100644
index 0000000..d46fc47
--- /dev/null
+++ b/java/com/xagasoft/gats/KeyNotFoundException.java
@@ -0,0 +1,23 @@
1package com.xagasoft.gats;
2
3public class KeyNotFoundException extends Exception
4{
5 private Object oSrc = null;
6 private String sKey = null;
7
8 public KeyNotFoundException( Object oSrc, String sKey )
9 {
10 this.oSrc = oSrc;
11 this.sKey = sKey;
12 }
13
14 public Object getSource()
15 {
16 return oSrc;
17 }
18
19 public String getKey()
20 {
21 return sKey;
22 }
23}