1 21 package com.db4o.cs.messages; 22 23 import com.db4o.*; 24 import com.db4o.cs.*; 25 import com.db4o.reflect.ReflectClass; 26 27 public final class MCreateClass extends MsgD { 28 29 public final boolean processAtServer(YapServerThread serverThread) { 30 YapStream stream = stream(); 31 Transaction trans = stream.getSystemTransaction(); 32 YapWriter returnBytes = new YapWriter(trans, 0); 33 try{ 34 ReflectClass claxx = trans.reflector().forName(readString()); 35 if (claxx != null) { 36 synchronized (streamLock()) { 37 try { 38 YapClass yapClass = stream.produceYapClass(claxx); 39 if (yapClass != null) { 40 stream.checkStillToSet(); 41 yapClass.setStateDirty(); 42 yapClass.write(trans); 43 trans.commit(); 44 returnBytes = stream.readWriterByID(trans, yapClass.getID()); 45 serverThread.write(Msg.OBJECT_TO_CLIENT.getWriter(returnBytes)); 46 return true; 47 48 } 49 50 52 } catch (Throwable t) { 53 if (Deploy.debug) { 54 System.out.println("MCreateClass failed"); 55 } 56 } 57 } 58 } 59 }catch(Throwable th){ 60 if (Deploy.debug) { 61 System.out.println("MCreateClass failed"); 62 } 63 } 64 serverThread.write(Msg.FAILED); 65 return true; 66 } 67 } 68 | Popular Tags |