BoundsHelper.java revision 898:e68b042f7130
1/*
2 * Copyright (c) 2014, 2017, 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 org.omg.CORBA;
27
28
29/**
30 * This Helper class is used to facilitate the marshalling of {@code Bounds}.
31 * For more information on Helper files, see
32 * <a href="{@docRoot}/org/omg/CORBA/doc-files/generatedfiles.html#helper">
33 * "Generated Files: Helper Files"</a>.
34 */
35
36abstract public class BoundsHelper
37{
38  private static String  _id = "IDL:omg.org/CORBA/Bounds:1.0";
39
40  public static void insert (org.omg.CORBA.Any a, org.omg.CORBA.Bounds that)
41  {
42    org.omg.CORBA.portable.OutputStream out = a.create_output_stream ();
43    a.type (type ());
44    write (out, that);
45    a.read_value (out.create_input_stream (), type ());
46  }
47
48  public static org.omg.CORBA.Bounds extract (org.omg.CORBA.Any a)
49  {
50    return read (a.create_input_stream ());
51  }
52
53  private static org.omg.CORBA.TypeCode __typeCode = null;
54  private static boolean __active = false;
55  synchronized public static org.omg.CORBA.TypeCode type ()
56  {
57    if (__typeCode == null)
58    {
59      synchronized (org.omg.CORBA.TypeCode.class)
60      {
61        if (__typeCode == null)
62        {
63          if (__active)
64          {
65            return org.omg.CORBA.ORB.init().create_recursive_tc ( _id );
66          }
67          __active = true;
68          org.omg.CORBA.StructMember[] _members0 = new org.omg.CORBA.StructMember [0];
69          org.omg.CORBA.TypeCode _tcOf_members0 = null;
70          __typeCode = org.omg.CORBA.ORB.init ().create_exception_tc (org.omg.CORBA.BoundsHelper.id (), "Bounds", _members0);
71          __active = false;
72        }
73      }
74    }
75    return __typeCode;
76  }
77
78  public static String id ()
79  {
80    return _id;
81  }
82
83  public static org.omg.CORBA.Bounds read (org.omg.CORBA.portable.InputStream istream)
84  {
85    org.omg.CORBA.Bounds value = new org.omg.CORBA.Bounds ();
86    // read and discard the repository ID
87    istream.read_string ();
88    return value;
89  }
90
91  public static void write (org.omg.CORBA.portable.OutputStream ostream, org.omg.CORBA.Bounds value)
92  {
93    // write the repository ID
94    ostream.write_string (id ());
95  }
96
97}
98