1 /* 2 3 Derby - Class org.apache.derby.iapi.types.CloneableObject 4 5 Licensed to the Apache Software Foundation (ASF) under one or more 6 contributor license agreements. See the NOTICE file distributed with 7 this work for additional information regarding copyright ownership. 8 The ASF licenses this file to you under the Apache License, Version 2.0 9 (the "License"); you may not use this file except in compliance with 10 the License. You may obtain a copy of the License at 11 12 http://www.apache.org/licenses/LICENSE-2.0 13 14 Unless required by applicable law or agreed to in writing, software 15 distributed under the License is distributed on an "AS IS" BASIS, 16 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 17 See the License for the specific language governing permissions and 18 limitations under the License. 19 20 */ 21 22 package org.apache.derby.iapi.types; 23 24 /** 25 * This is a simple interface that is used by the 26 * sorter for cloning input rows. It defines 27 * a method that can be used to clone a column. 28 */ 29 public interface CloneableObject 30 { 31 /** 32 * Get a shallow copy of the object and return 33 * it. This is used by the sorter to clone 34 * columns. It should be cloning the column 35 * holder but not its value. The only difference 36 * between this method and getClone is this one does 37 * not objectify a stream. 38 * 39 * @return new cloned column as an object 40 */ 41 public Object cloneObject(); 42 } 43