GenericTaggedProfile.java revision 608:7e06bf1dcb09
1331722Seadler/* 2341477Svmaffione * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. 3341477Svmaffione * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4261909Sluigi * 5261909Sluigi * This code is free software; you can redistribute it and/or modify it 6261909Sluigi * under the terms of the GNU General Public License version 2 only, as 7261909Sluigi * published by the Free Software Foundation. Oracle designates this 8261909Sluigi * particular file as subject to the "Classpath" exception as provided 9261909Sluigi * by Oracle in the LICENSE file that accompanied this code. 10261909Sluigi * 11261909Sluigi * This code is distributed in the hope that it will be useful, but WITHOUT 12261909Sluigi * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13261909Sluigi * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14261909Sluigi * version 2 for more details (a copy is included in the LICENSE file that 15261909Sluigi * accompanied this code). 16261909Sluigi * 17261909Sluigi * You should have received a copy of the GNU General Public License version 18261909Sluigi * 2 along with this work; if not, write to the Free Software Foundation, 19261909Sluigi * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20261909Sluigi * 21261909Sluigi * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22261909Sluigi * or visit www.oracle.com if you need additional information or have any 23261909Sluigi * questions. 24261909Sluigi */ 25261909Sluigi 26261909Sluigipackage com.sun.corba.se.impl.ior; 27261909Sluigi 28261909Sluigiimport org.omg.CORBA_2_3.portable.InputStream ; 29261909Sluigi 30261909Sluigiimport com.sun.corba.se.spi.ior.TaggedProfile ; 31261909Sluigiimport com.sun.corba.se.spi.ior.TaggedProfileTemplate ; 32261909Sluigiimport com.sun.corba.se.spi.ior.ObjectId ; 33261909Sluigiimport com.sun.corba.se.spi.ior.ObjectKeyTemplate ; 34261909Sluigiimport com.sun.corba.se.spi.ior.ObjectKey ; 35261909Sluigi 36261909Sluigiimport com.sun.corba.se.spi.orb.ORB ; 37341477Svmaffione 38261909Sluigiimport com.sun.corba.se.spi.ior.iiop.GIOPVersion ; 39261909Sluigi 40261909Sluigiimport com.sun.corba.se.impl.encoding.EncapsOutputStream ; 41261909Sluigi 42261909Sluigi/** 43261909Sluigi * @author 44261909Sluigi */ 45261909Sluigipublic class GenericTaggedProfile extends GenericIdentifiable implements TaggedProfile 46261909Sluigi{ 47261909Sluigi private ORB orb ; 48261909Sluigi 49261909Sluigi public GenericTaggedProfile( int id, InputStream is ) 50261909Sluigi { 51261909Sluigi super( id, is ) ; 52261909Sluigi this.orb = (ORB)(is.orb()) ; 53261909Sluigi } 54261909Sluigi 55261909Sluigi public GenericTaggedProfile( ORB orb, int id, byte[] data ) 56261909Sluigi { 57261909Sluigi super( id, data ) ; 58261909Sluigi this.orb = orb ; 59261909Sluigi } 60261909Sluigi 61261909Sluigi public TaggedProfileTemplate getTaggedProfileTemplate() 62261909Sluigi { 63261909Sluigi return null ; 64261909Sluigi } 65261909Sluigi 66261909Sluigi public ObjectId getObjectId() 67261909Sluigi { 68341477Svmaffione return null ; 69341477Svmaffione } 70261909Sluigi 71341477Svmaffione public ObjectKeyTemplate getObjectKeyTemplate() 72341477Svmaffione { 73341477Svmaffione return null ; 74261909Sluigi } 75341477Svmaffione 76341477Svmaffione public ObjectKey getObjectKey() 77261909Sluigi { 78261909Sluigi return null ; 79261909Sluigi } 80341477Svmaffione 81261909Sluigi public boolean isEquivalent( TaggedProfile prof ) 82341477Svmaffione { 83344047Svmaffione return equals( prof ) ; 84261909Sluigi } 85261909Sluigi 86261909Sluigi public void makeImmutable() 87344047Svmaffione { 88261909Sluigi // NO-OP 89261909Sluigi } 90261909Sluigi 91341477Svmaffione public boolean isLocal() 92344047Svmaffione { 93341477Svmaffione return false ; 94261909Sluigi } 95341477Svmaffione 96261909Sluigi public org.omg.IOP.TaggedProfile getIOPProfile() 97261909Sluigi { 98261909Sluigi EncapsOutputStream os = 99341477Svmaffione sun.corba.OutputStreamFactory.newEncapsOutputStream(orb); 100261909Sluigi write( os ) ; 101261909Sluigi InputStream is = (InputStream)(os.create_input_stream()) ; 102261909Sluigi return org.omg.IOP.TaggedProfileHelper.read( is ) ; 103344047Svmaffione } 104261909Sluigi} 105261909Sluigi