Home | History | Annotate | Download | only in xz
      1 /*
      2  * DeltaEncoder
      3  *
      4  * Author: Lasse Collin <lasse.collin (at) tukaani.org>
      5  *
      6  * This file has been put into the public domain.
      7  * You can do whatever you want with this file.
      8  */
      9 
     10 package org.tukaani.xz;
     11 
     12 class DeltaEncoder extends DeltaCoder implements FilterEncoder {
     13     private final DeltaOptions options;
     14     private final byte[] props = new byte[1];
     15 
     16     DeltaEncoder(DeltaOptions options) {
     17         props[0] = (byte)(options.getDistance() - 1);
     18         this.options = (DeltaOptions)options.clone();
     19     }
     20 
     21     public long getFilterID() {
     22         return FILTER_ID;
     23     }
     24 
     25     public byte[] getFilterProps() {
     26         return props;
     27     }
     28 
     29     public boolean supportsFlushing() {
     30         return true;
     31     }
     32 
     33     public FinishableOutputStream getOutputStream(FinishableOutputStream out) {
     34         return options.getOutputStream(out);
     35     }
     36 }
     37