/**
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

module org.apache.hadoop.record.test {
    class RecRecord0 {
        ustring     StringVal;
    }

    class RecRecord1 {
        boolean         BoolVal;
        byte            ByteVal;
        int             IntVal;
        long            LongVal;
        float           FloatVal;
        double          DoubleVal;
        ustring         StringVal;
        buffer          BufferVal;
        vector<ustring> VectorVal;
        map<ustring, ustring>   MapVal;
    }
    
  class RecRecordOld {
  	ustring name;
  	vector<long> ivec;
  	vector<vector<RecRecord0>> svec;
  	RecRecord0 inner;
  	vector<vector<vector<ustring>>> strvec;
  	float i1;
  	map<byte, ustring> map1;
  	vector<map<int, long>> mvec1;
  	vector<map<int, long>> mvec2;
  }
  
  /* RecRecordNew is a lot like RecRecordOld. Helps test for versioning. */
  class RecRecordNew {
  	ustring name2;
  	RecRecord0 inner;
  	vector<int> ivec;
  	vector<vector<int>> svec;
  	vector<vector<vector<ustring>>> strvec;
		int i1;  	
		map<long, ustring> map1;
  	vector<map<int, long>> mvec2;	
  }
  
    
}

