// File generated by hadoop record compiler. Do not edit. package org.wikipedia.miner.db.struct; public class DbTranslations extends org.apache.hadoop.record.Record { private static final org.apache.hadoop.record.meta.RecordTypeInfo _rio_recTypeInfo; private static org.apache.hadoop.record.meta.RecordTypeInfo _rio_rtiFilter; private static int[] _rio_rtiFilterFields; static { _rio_recTypeInfo = new org.apache.hadoop.record.meta.RecordTypeInfo("DbTranslations"); _rio_recTypeInfo.addField("TranslationsByLangCode", new org.apache.hadoop.record.meta.MapTypeID(org.apache.hadoop.record.meta.TypeID.StringTypeID, org.apache.hadoop.record.meta.TypeID.StringTypeID)); } private java.util.TreeMap<String,String> TranslationsByLangCode; public DbTranslations() { } public DbTranslations( final java.util.TreeMap<String,String> TranslationsByLangCode) { this.TranslationsByLangCode = TranslationsByLangCode; } public static org.apache.hadoop.record.meta.RecordTypeInfo getTypeInfo() { return _rio_recTypeInfo; } public static void setTypeFilter(org.apache.hadoop.record.meta.RecordTypeInfo rti) { if (null == rti) return; _rio_rtiFilter = rti; _rio_rtiFilterFields = null; } private static void setupRtiFields() { if (null == _rio_rtiFilter) return; // we may already have done this if (null != _rio_rtiFilterFields) return; int _rio_i, _rio_j; _rio_rtiFilterFields = new int [_rio_rtiFilter.getFieldTypeInfos().size()]; for (_rio_i=0; _rio_i<_rio_rtiFilterFields.length; _rio_i++) { _rio_rtiFilterFields[_rio_i] = 0; } java.util.Iterator<org.apache.hadoop.record.meta.FieldTypeInfo> _rio_itFilter = _rio_rtiFilter.getFieldTypeInfos().iterator(); _rio_i=0; while (_rio_itFilter.hasNext()) { org.apache.hadoop.record.meta.FieldTypeInfo _rio_tInfoFilter = _rio_itFilter.next(); java.util.Iterator<org.apache.hadoop.record.meta.FieldTypeInfo> _rio_it = _rio_recTypeInfo.getFieldTypeInfos().iterator(); _rio_j=1; while (_rio_it.hasNext()) { org.apache.hadoop.record.meta.FieldTypeInfo _rio_tInfo = _rio_it.next(); if (_rio_tInfo.equals(_rio_tInfoFilter)) { _rio_rtiFilterFields[_rio_i] = _rio_j; break; } _rio_j++; } _rio_i++; } } public java.util.TreeMap<String,String> getTranslationsByLangCode() { return TranslationsByLangCode; } public void setTranslationsByLangCode(final java.util.TreeMap<String,String> TranslationsByLangCode) { this.TranslationsByLangCode=TranslationsByLangCode; } public void serialize(final org.apache.hadoop.record.RecordOutput _rio_a, final String _rio_tag) throws java.io.IOException { _rio_a.startRecord(this,_rio_tag); { _rio_a.startMap(TranslationsByLangCode,"TranslationsByLangCode"); java.util.Set<java.util.Map.Entry<String,String>> _rio_es1 = TranslationsByLangCode.entrySet(); for(java.util.Iterator<java.util.Map.Entry<String,String>> _rio_midx1 = _rio_es1.iterator(); _rio_midx1.hasNext();) { java.util.Map.Entry<String,String> _rio_me1 = _rio_midx1.next(); String _rio_k1 = _rio_me1.getKey(); String _rio_v1 = _rio_me1.getValue(); _rio_a.writeString(_rio_k1,"_rio_k1"); _rio_a.writeString(_rio_v1,"_rio_v1"); } _rio_a.endMap(TranslationsByLangCode,"TranslationsByLangCode"); } _rio_a.endRecord(this,_rio_tag); } private void deserializeWithoutFilter(final org.apache.hadoop.record.RecordInput _rio_a, final String _rio_tag) throws java.io.IOException { _rio_a.startRecord(_rio_tag); { org.apache.hadoop.record.Index _rio_midx1 = _rio_a.startMap("TranslationsByLangCode"); TranslationsByLangCode=new java.util.TreeMap<String,String>(); for (; !_rio_midx1.done(); _rio_midx1.incr()) { String _rio_k1; _rio_k1=_rio_a.readString("_rio_k1"); String _rio_v1; _rio_v1=_rio_a.readString("_rio_v1"); TranslationsByLangCode.put(_rio_k1,_rio_v1); } _rio_a.endMap("TranslationsByLangCode"); } _rio_a.endRecord(_rio_tag); } public void deserialize(final org.apache.hadoop.record.RecordInput _rio_a, final String _rio_tag) throws java.io.IOException { if (null == _rio_rtiFilter) { deserializeWithoutFilter(_rio_a, _rio_tag); return; } // if we're here, we need to read based on version info _rio_a.startRecord(_rio_tag); setupRtiFields(); for (int _rio_i=0; _rio_i<_rio_rtiFilter.getFieldTypeInfos().size(); _rio_i++) { if (1 == _rio_rtiFilterFields[_rio_i]) { { org.apache.hadoop.record.Index _rio_midx1 = _rio_a.startMap("TranslationsByLangCode"); TranslationsByLangCode=new java.util.TreeMap<String,String>(); for (; !_rio_midx1.done(); _rio_midx1.incr()) { String _rio_k1; _rio_k1=_rio_a.readString("_rio_k1"); String _rio_v1; _rio_v1=_rio_a.readString("_rio_v1"); TranslationsByLangCode.put(_rio_k1,_rio_v1); } _rio_a.endMap("TranslationsByLangCode"); } } else { java.util.ArrayList<org.apache.hadoop.record.meta.FieldTypeInfo> typeInfos = (java.util.ArrayList<org.apache.hadoop.record.meta.FieldTypeInfo>)(_rio_rtiFilter.getFieldTypeInfos()); org.apache.hadoop.record.meta.Utils.skip(_rio_a, typeInfos.get(_rio_i).getFieldID(), typeInfos.get(_rio_i).getTypeID()); } } _rio_a.endRecord(_rio_tag); } public int compareTo (final Object _rio_peer_) throws ClassCastException { if (!(_rio_peer_ instanceof DbTranslations)) { throw new ClassCastException("Comparing different types of records."); } DbTranslations _rio_peer = (DbTranslations) _rio_peer_; int _rio_ret = 0; { java.util.Set<String> _rio_set10 = TranslationsByLangCode.keySet(); java.util.Set<String> _rio_set20 = _rio_peer.TranslationsByLangCode.keySet(); java.util.Iterator<String> _rio_miter10 = _rio_set10.iterator(); java.util.Iterator<String> _rio_miter20 = _rio_set20.iterator(); for(; _rio_miter10.hasNext() && _rio_miter20.hasNext();) { String _rio_k10 = _rio_miter10.next(); String _rio_k20 = _rio_miter20.next(); _rio_ret = _rio_k10.compareTo(_rio_k20); if (_rio_ret != 0) { return _rio_ret; } } _rio_ret = (_rio_set10.size() - _rio_set20.size()); } if (_rio_ret != 0) return _rio_ret; return _rio_ret; } public boolean equals(final Object _rio_peer_) { if (!(_rio_peer_ instanceof DbTranslations)) { return false; } if (_rio_peer_ == this) { return true; } DbTranslations _rio_peer = (DbTranslations) _rio_peer_; boolean _rio_ret = false; _rio_ret = TranslationsByLangCode.equals(_rio_peer.TranslationsByLangCode); if (!_rio_ret) return _rio_ret; return _rio_ret; } public Object clone() throws CloneNotSupportedException { DbTranslations _rio_other = new DbTranslations(); _rio_other.TranslationsByLangCode = (java.util.TreeMap<String,String>) this.TranslationsByLangCode.clone(); return _rio_other; } public int hashCode() { int _rio_result = 17; int _rio_ret; _rio_ret = TranslationsByLangCode.hashCode(); _rio_result = 37*_rio_result + _rio_ret; return _rio_result; } public static String signature() { return "LDbTranslations({ss})"; } public static class Comparator extends org.apache.hadoop.record.RecordComparator { public Comparator() { super(DbTranslations.class); } static public int slurpRaw(byte[] b, int s, int l) { try { int os = s; { int mi1 = org.apache.hadoop.record.Utils.readVInt(b, s); int mz1 = org.apache.hadoop.record.Utils.getVIntSize(mi1); s+=mz1; l-=mz1; for (int midx1 = 0; midx1 < mi1; midx1++) {{ int i = org.apache.hadoop.record.Utils.readVInt(b, s); int z = org.apache.hadoop.record.Utils.getVIntSize(i); s+=(z+i); l-= (z+i); } { int i = org.apache.hadoop.record.Utils.readVInt(b, s); int z = org.apache.hadoop.record.Utils.getVIntSize(i); s+=(z+i); l-= (z+i); } } } return (os - s); } catch(java.io.IOException e) { throw new RuntimeException(e); } } static public int compareRaw(byte[] b1, int s1, int l1, byte[] b2, int s2, int l2) { try { int os1 = s1; { int mi11 = org.apache.hadoop.record.Utils.readVInt(b1, s1); int mi21 = org.apache.hadoop.record.Utils.readVInt(b2, s2); int mz11 = org.apache.hadoop.record.Utils.getVIntSize(mi11); int mz21 = org.apache.hadoop.record.Utils.getVIntSize(mi21); s1+=mz11; s2+=mz21; l1-=mz11; l2-=mz21; for (int midx1 = 0; midx1 < mi11 && midx1 < mi21; midx1++) {{ int i1 = org.apache.hadoop.record.Utils.readVInt(b1, s1); int i2 = org.apache.hadoop.record.Utils.readVInt(b2, s2); int z1 = org.apache.hadoop.record.Utils.getVIntSize(i1); int z2 = org.apache.hadoop.record.Utils.getVIntSize(i2); s1+=z1; s2+=z2; l1-=z1; l2-=z2; int r1 = org.apache.hadoop.record.Utils.compareBytes(b1,s1,i1,b2,s2,i2); if (r1 != 0) { return (r1<0)?-1:0; } s1+=i1; s2+=i2; l1-=i1; l1-=i2; } { int i = org.apache.hadoop.record.Utils.readVInt(b1, s1); int z = org.apache.hadoop.record.Utils.getVIntSize(i); s1+=(z+i); l1-= (z+i); } { int i = org.apache.hadoop.record.Utils.readVInt(b2, s2); int z = org.apache.hadoop.record.Utils.getVIntSize(i); s2+=(z+i); l2-= (z+i); } } if (mi11 != mi21) { return (mi11<mi21)?-1:0; } } return (os1 - s1); } catch(java.io.IOException e) { throw new RuntimeException(e); } } public int compare(byte[] b1, int s1, int l1, byte[] b2, int s2, int l2) { int ret = compareRaw(b1,s1,l1,b2,s2,l2); return (ret == -1)? -1 : ((ret==0)? 1 : 0);} } static { org.apache.hadoop.record.RecordComparator.define(DbTranslations.class, new Comparator()); } }