MentaContainer

Rev

Rev 39 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 39 Rev 40
Line 116... Line 116...
116
            }
116
            }
117
           
117
           
118
                /*
118
                /*
119
                 * Use reflection to set a property in the bean
119
                 * Use reflection to set a property in the bean
120
                 */
120
                 */
121
                private void setValue(Object bean, String name, Object value) throws InstantiationException {
-
 
-
 
121
                private void setValue(Object bean, String name, Object value) {
122
               
122
               
123
                        try {
123
                        try {
124
                               
124
                               
125
                                StringBuffer sb = new StringBuffer(30);
125
                                StringBuffer sb = new StringBuffer(30);
126
                                sb.append("set");
126
                                sb.append("set");
Line 176... Line 176...
176
                        m.invoke(bean, new Object[] { value });
176
                        m.invoke(bean, new Object[] { value });
177
                    }                
177
                    }                
178
                   
178
                   
179
                        } catch(Exception e) {
179
                        } catch(Exception e) {
180
                               
180
                               
181
                                throw new InstantiationException("Error trying to set a property with reflection: " + name);
-
 
-
 
181
                                throw new RuntimeException("Error trying to set a property with reflection: " + name, e);
182
                        }
182
                        }
183
                }
183
                }
184
           
184
           
185
            private static Class<? extends Object> getPrimitiveFrom(Object w) {
185
            private static Class<? extends Object> getPrimitiveFrom(Object w) {
186
                if (w instanceof Boolean) { return Boolean.TYPE; }
186
                if (w instanceof Boolean) { return Boolean.TYPE; }
Line 192... Line 192...
192
                else if (w instanceof Float) { return Float.TYPE; }
192
                else if (w instanceof Float) { return Float.TYPE; }
193
                else if (w instanceof Double) { return Double.TYPE; }
193
                else if (w instanceof Double) { return Double.TYPE; }
194
                return null;
194
                return null;
195
            }  
195
            }  
196
           
196
           
197
            public Object getInstance() throws InstantiationException {
-
 
-
 
197
            public Object getInstance()  {
198
               
198
               
199
                if (singleton && singletonValue != null) return singletonValue;
199
                if (singleton && singletonValue != null) return singletonValue;
200
               
200
               
201
                Object obj = null;
201
                Object obj = null;
202
               
202
               
Line 208... Line 208...
208
                               
208
                               
209
                            constructor = klass.getConstructor(getClasses(initValues));
209
                            constructor = klass.getConstructor(getClasses(initValues));
210
                           
210
                           
211
                        } catch(Exception e) {
211
                        } catch(Exception e) {
212
                               
212
                               
213
                            throw new InstantiationException("Cannot find a constructor for class: " + klass);
-
 
-
 
213
                            throw new RuntimeException("Cannot find a constructor for class: " + klass, e);
214
                        }
214
                        }
215
                    }
215
                    }
216
                   
216
                   
217
                    try {
217
                    try {
218
                       
218
                       
219
                        obj = constructor.newInstance(getValues(initValues));
219
                        obj = constructor.newInstance(getValues(initValues));
220
                       
220
                       
221
                    } catch(Exception e) {
221
                    } catch(Exception e) {
222
                       
222
                       
223
                        throw new InstantiationException("Cannot create instance from constructor: " + constructor);
-
 
-
 
223
                        throw new RuntimeException("Cannot create instance from constructor: " + constructor, e);
224
                    }
224
                    }
225
                   
225
                   
226
                } else {
226
                } else {
227
                       
227
                       
228
                    try {
228
                    try {
229
                       
229
                       
230
                        obj = klass.newInstance();
230
                        obj = klass.newInstance();
231
                       
231
                       
232
                    } catch(Exception e) {
232
                    } catch(Exception e) {
233
                       
233
                       
234
                        throw new InstantiationException("Cannot create instance from class: " + klass);
-
 
-
 
234
                        throw new RuntimeException("Cannot create instance from class: " + klass, e);
235
                    }
235
                    }
236
                }
236
                }
237
               
237
               
238
                if (props != null && props.size() > 0) {
238
                if (props != null && props.size() > 0) {
239
                       
239