public void addMapIndex(MapContainer mapContainer) {
   final IndexService indexService = mapContainer.getIndexService();
   if (indexService.hasIndex()) {
     MapIndexInfo mapIndexInfo = new MapIndexInfo(mapContainer.getName());
     for (Index index : indexService.getIndexes()) {
       mapIndexInfo.addIndexInfo(index.getAttributeName(), index.isOrdered());
     }
     indexInfoList.add(mapIndexInfo);
   }
 }
 @Override
 protected void writeInternal(ObjectDataOutput out) throws IOException {
   super.writeInternal(out);
   out.writeInt(indexInfoList.size());
   for (MapIndexInfo mapIndex : indexInfoList) {
     mapIndex.writeData(out);
   }
   out.writeInt(interceptorInfoList.size());
   for (InterceptorInfo interceptorInfo : interceptorInfoList) {
     interceptorInfo.writeData(out);
   }
 }
 @Override
 protected void readInternal(ObjectDataInput in) throws IOException {
   super.readInternal(in);
   int size = in.readInt();
   for (int i = 0; i < size; i++) {
     MapIndexInfo mapIndexInfo = new MapIndexInfo();
     mapIndexInfo.readData(in);
     indexInfoList.add(mapIndexInfo);
   }
   int size2 = in.readInt();
   for (int i = 0; i < size2; i++) {
     InterceptorInfo info = new InterceptorInfo();
     info.readData(in);
     interceptorInfoList.add(info);
   }
 }