1 21 package com.db4o; 22 23 import java.net.*; 24 25 import com.db4o.config.*; 26 import com.db4o.config.annotations.reflect.ConfigurationIntrospector; 27 import com.db4o.ext.*; 28 import com.db4o.reflect.*; 29 import com.db4o.reflect.jdk.*; 30 31 class JDK_5 extends JDK_1_4 { 32 33 private static final String ENUM_CLASSNAME = "java.lang.Enum"; 34 35 private static ReflectClass enumClass; 36 37 public Config4Class extendConfiguration(ReflectClass clazz, 38 Configuration config, Config4Class classConfig) { 39 Class javaClazz = JdkReflector.toNative(clazz); 40 if(javaClazz==null) { 41 return classConfig; 42 } 43 try { 44 ConfigurationIntrospector instrospetor = new ConfigurationIntrospector(javaClazz, config, classConfig); 45 return instrospetor.apply(); 46 } catch (Exception exc) { 47 throw new Db4oException(exc); 48 } 49 } 50 51 public boolean isConnected(Socket socket){ 52 if(socket == null){ 53 return false; 54 } 55 if(! socket.isConnected() ){ 56 return false; 57 } 58 return ! socket.isClosed(); 59 } 60 61 boolean isEnum(Reflector reflector, ReflectClass claxx) { 62 63 if (claxx == null) { 64 return false; 65 } 66 67 if (enumClass == null) { 68 try { 69 enumClass = reflector.forClass(Class.forName(ENUM_CLASSNAME)); 70 } catch (ClassNotFoundException e) { 71 return false; 72 } 73 } 74 75 return enumClass.isAssignableFrom(claxx); 76 } 77 78 } 79 | Popular Tags |