UEInfoServiceContext.java revision 608:7e06bf1dcb09
1/* 2 * Copyright (c) 1999, 2003, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26package com.sun.corba.se.spi.servicecontext; 27 28import java.io.Serializable ; 29import org.omg.CORBA.SystemException; 30import org.omg.CORBA.CompletionStatus; 31import org.omg.CORBA.UNKNOWN; 32import org.omg.CORBA_2_3.portable.InputStream; 33import org.omg.CORBA_2_3.portable.OutputStream; 34import com.sun.corba.se.spi.ior.iiop.GIOPVersion; 35import com.sun.corba.se.spi.servicecontext.ServiceContext ; 36 37public class UEInfoServiceContext extends ServiceContext { 38 public UEInfoServiceContext( Throwable ex ) 39 { 40 unknown = ex ; 41 } 42 43 public UEInfoServiceContext(InputStream is, GIOPVersion gv) 44 { 45 super(is, gv) ; 46 47 try { 48 unknown = (Throwable) in.read_value() ; 49 } catch (ThreadDeath d) { 50 throw d ; 51 } catch (Throwable e) { 52 unknown = new UNKNOWN( 0, CompletionStatus.COMPLETED_MAYBE ) ; 53 } 54 } 55 56 // Required SERVICE_CONTEXT_ID and getId definitions 57 public static final int SERVICE_CONTEXT_ID = 9 ; 58 public int getId() { return SERVICE_CONTEXT_ID ; } 59 60 public void writeData( OutputStream os ) throws SystemException 61 { 62 os.write_value( (Serializable)unknown ) ; 63 } 64 65 public Throwable getUE() { return unknown ; } 66 67 private Throwable unknown = null ; 68 69 public String toString() 70 { 71 return "UEInfoServiceContext[ unknown=" + unknown.toString() + " ]" ; 72 } 73} 74