001/* DynArrayOperations.java -- 002 Copyright (C) 2005 Free Software Foundation, Inc. 003This file is part of GNU Classpath. 004 005GNU Classpath is free software; you can redistribute it and/or modify 006it under the terms of the GNU General Public License as published by 007the Free Software Foundation; either version 2, or (at your option) 008any later version. 009 010GNU Classpath is distributed in the hope that it will be useful, but 011WITHOUT ANY WARRANTY; without even the implied warranty of 012MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 013General Public License for more details. 014 015You should have received a copy of the GNU General Public License 016along with GNU Classpath; see the file COPYING. If not, write to the 017Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 01802110-1301 USA. 019 020Linking this library statically or dynamically with other modules is 021making a combined work based on this library. Thus, the terms and 022conditions of the GNU General Public License cover the whole 023combination. 024 025As a special exception, the copyright holders of this library give you 026permission to link this library with independent modules to produce an 027executable, regardless of the license terms of these independent 028modules, and to copy and distribute the resulting executable under 029terms of your choice, provided that you also meet, for each linked 030independent module, the terms and conditions of the license of that 031module. An independent module is a module which is not derived from 032or based on this library. If you modify this library, you may extend 033this exception to your version of the library, but you are not 034obligated to do so. If you do not wish to do so, delete this 035exception statement from your version. */ 036 037 038package org.omg.DynamicAny; 039 040import org.omg.CORBA.Any; 041import org.omg.DynamicAny.DynAnyPackage.InvalidValue; 042import org.omg.DynamicAny.DynAnyPackage.TypeMismatch; 043 044/** 045 * Defines operations, applicable for {@link DynArray}. 046 * 047 * @author Audrius Meskauskas, Lithuania (AudriusA@Bioinformatics.org) 048 */ 049public interface DynArrayOperations 050 extends DynAnyOperations 051{ 052 /** 053 * Returns the array. 054 * 055 * @return the array of elements as an array of DynAny's. 056 */ 057 DynAny[] get_elements_as_dyn_any(); 058 059 /** 060 * Returns the array. 061 * 062 * @return the array of elements as an array of Any's. 063 */ 064 Any[] get_elements(); 065 066 /** 067 * Sets the array. 068 * 069 * @param value the array of elements an DynAny's. 070 * 071 * @throws TypeMismatch if the members of the passed array does not match 072 * array component type. 073 * 074 * @throws InvalidValue if the number of elements in the passed array is not 075 * the same as the size of this DynArray. 076 */ 077 void set_elements_as_dyn_any(DynAny[] value) 078 throws TypeMismatch, InvalidValue; 079 080 /** 081 * Sets the array. 082 * 083 * @param value the array of elements as Any's. 084 * 085 * @throws TypeMismatch if the members of the passed array does not match 086 * array component type. 087 * 088 * @throws InvalidValue if the number of elements in the passed array is not 089 * the same as the size of this DynArray. 090 */ 091 void set_elements(Any[] value) 092 throws TypeMismatch, InvalidValue; 093}