public void add(InputStream is, String path) {
        byte [] buffer = new byte[1024];

        try {
            String entryName = this.baseName + "/" + path;
            ZipEntry ze = new ZipEntry(entryName);
            zos.putNextEntry(ze);
            int bytesRead = is.read(buffer);
            while( bytesRead > -1 ) {
                zos.write(buffer, 0, bytesRead);
                bytesRead = is.read(buffer);
            }
        }
        catch (ZipException ze) {
            ROOT_LOGGER.debugf(ze, "%s is already in the zip", path);
        }
        catch (Exception e) {
            ROOT_LOGGER.debugf(e, "Error when adding %s", path);
        }
        finally {
            try {
                zos.closeEntry();
            }
            catch (Exception e) {
                ROOT_LOGGER.debugf(e, "Error when closing entry for %s", path);
            }
        }
    }
public void add(InputStream is, String path) {
        byte [] buffer = new byte[1024];

        try {
            String entryName = this.baseName + "/" + path;
            ZipEntry ze = new ZipEntry(entryName);
            zos.putNextEntry(ze);
            int bytesRead = is.read(buffer);
            while( bytesRead > -1 ) {
                zos.write(buffer, 0, bytesRead);
                bytesRead = is.read(buffer);
            }
        }
        catch (ZipException ze) {
            ROOT_LOGGER.debugf(ze, "%s is already in the zip", path);
        }
        catch (Exception e) {
            ROOT_LOGGER.debugf(e, "Error when adding %s", path);
        }
        finally {
            try {
                zos.closeEntry();
            }
            catch (Exception e) {
                ROOT_LOGGER.debugf(e, "Error when closing entry for %s", path);
            }
        }
    }
public void add ( InputStream is , String path ) { byte [ ] buffer = new byte [ 1024 ] ; try { String entryName = this . baseName + "/" + path ; ZipEntry ze = new ZipEntry ( entryName ) ; zos . putNextEntry ( ze ) ; int bytesRead = is . read ( buffer ) ; while ( bytesRead > - 1 ) { zos . write ( buffer , 0 , bytesRead ) ; bytesRead = is . read ( buffer ) ; } } catch ( ZipException ze ) { ROOT_LOGGER . debugf ( ze , "%s is already in the zip" , path ) ; } catch ( Exception e ) { ROOT_LOGGER . debugf ( e , "Error when adding %s" , path ) ; } finally { try { zos . closeEntry ( ) ; } catch ( Exception e ) { ROOT_LOGGER . debugf ( e , "Error when closing entry for %s" , path ) ; } } }
Adds the contents of the {@link InputStream} to the path in the zip.

This method allows for absolute control of the destination of the content to be stored.
It is not common to use this method.
@param is content to write
@param path destination to write to in the zip file
Adds the contents of the { @link InputStream } to the path in the zip .