@SuppressWarnings({"rawtypes","unchecked"}) public void emitTuple(int i){
  HashMap<String,String> stuple;
  HashMap<String,ArrayList<KeyValPair>> atuple;
  String key=Integer.toString(i);
  if (keys == null) {
    if (string_data.isConnected()) {
      stuple=new HashMap<String,String>(1);
      stuple.put(key,null);
      string_data.emit(stuple);
    }
    if (keyvalpair_list.isConnected()) {
      atuple=new HashMap<String,ArrayList<KeyValPair>>(1);
      atuple.put(key,null);
      keyvalpair_list.emit(atuple);
    }
    return;
  }
  ArrayList<KeyValPair> alist=null;
  ArrayList<Integer> vlist=null;
  String str=new String();
  String vstr=new String();
  boolean iskv=keyvalpair_list.isConnected();
  boolean isvl=val_list.isConnected();
  boolean issd=string_data.isConnected();
  boolean isvd=val_data.isConnected();
  int j=0;
  for (  String s : keys) {
    if (iskv) {
      if (alist == null) {
        alist=new ArrayList<KeyValPair>(keys.size());
      }
      alist.add(new KeyValPair<String,Integer>(s,new Integer(keys_min.get(j) + random.nextInt(keys_range.get(j)))));
    }
    if (isvl) {
      if (vlist == null) {
        vlist=new ArrayList<Integer>(keys.size());
      }
      vlist.add(new Integer(keys_min.get(j) + random.nextInt(keys_range.get(j))));
    }
    if (issd) {
      if (!str.isEmpty()) {
        str+=';';
      }
      str+=s + ":" + Integer.toString(keys_min.get(j) + random.nextInt(keys_range.get(j)));
    }
    if (isvd) {
      if (!vstr.isEmpty()) {
        vstr+=';';
      }
      vstr+=Integer.toString(keys_min.get(j) + random.nextInt(keys_range.get(j)));
    }
    j++;
  }
  if (iskv) {
    atuple=new HashMap<String,ArrayList<KeyValPair>>(1);
    atuple.put(key,alist);
    keyvalpair_list.emit(atuple);
  }
  if (isvl) {
    HashMap<String,ArrayList<Integer>> ituple=new HashMap<String,ArrayList<Integer>>(1);
    ituple.put(key,vlist);
    val_list.emit(ituple);
  }
  if (issd) {
    stuple=new HashMap<String,String>(1);
    stuple.put(key,str);
    string_data.emit(stuple);
  }
  if (isvd) {
    HashMap vtuple=new HashMap<String,String>(1);
    vtuple.put(key,vstr);
    val_data.emit(vtuple);
  }
}

@ SuppressWarnings ( { "rawtypes" , "unchecked" } ) public void emitTuple ( int i ) { HashMap < String , String > stuple ; HashMap < String , ArrayList < KeyValPair > > atuple ; String key = Integer . toString ( i ) ; if ( keys == null ) { if ( string_data . isConnected ( ) ) { stuple = new HashMap < String , String > ( 1 ) ; stuple . put ( key , null ) ; string_data . emit ( stuple ) ; } if ( keyvalpair_list . isConnected ( ) ) { atuple = new HashMap < String , ArrayList < KeyValPair > > ( 1 ) ; atuple . put ( key , null ) ; keyvalpair_list . emit ( atuple ) ; } return ; } ArrayList < KeyValPair > alist = null ; ArrayList < Integer > vlist = null ; String str = new String ( ) ; String vstr = new String ( ) ; boolean iskv = keyvalpair_list . isConnected ( ) ; boolean isvl = val_list . isConnected ( ) ; boolean issd = string_data . isConnected ( ) ; boolean isvd = val_data . isConnected ( ) ; int j = 0 ; for ( String s : keys ) { if ( iskv ) { if ( alist == null ) { alist = new ArrayList < KeyValPair > ( keys . size ( ) ) ; } alist . add ( new KeyValPair < String , Integer > ( s , new Integer ( keys_min . get ( j ) + random . nextInt ( keys_range . get ( j ) ) ) ) ) ; } if ( isvl ) { if ( vlist == null ) { vlist = new ArrayList < Integer > ( keys . size ( ) ) ; } vlist . add ( new Integer ( keys_min . get ( j ) + random . nextInt ( keys_range . get ( j ) ) ) ) ; } if ( issd ) { if ( ! str . isEmpty ( ) ) { str += ';' ; } str += s + ":" + Integer . toString ( keys_min . get ( j ) + random . nextInt ( keys_range . get ( j ) ) ) ; } if ( isvd ) { if ( ! vstr . isEmpty ( ) ) { vstr += ';' ; } vstr += Integer . toString ( keys_min . get ( j ) + random . nextInt ( keys_range . get ( j ) ) ) ; } j ++ ; } if ( iskv ) { atuple = new HashMap < String , ArrayList < KeyValPair > > ( 1 ) ; atuple . put ( key , alist ) ; keyvalpair_list . emit ( atuple ) ; } if ( isvl ) { HashMap < String , ArrayList < Integer > > ituple = new HashMap < String , ArrayList < Integer > > ( 1 ) ; ituple . put ( key , vlist ) ; val_list . emit ( ituple ) ; } if ( issd ) { stuple = new HashMap < String , String > ( 1 ) ; stuple . put ( key , str ) ; string_data . emit ( stuple ) ; } if ( isvd ) { HashMap vtuple = new HashMap < String , String > ( 1 ) ; vtuple . put ( key , vstr ) ; val_data . emit ( vtuple ) ; } }
inserts a tuple for a given outbound key
