Class HTTPOutputStream

  • All Implemented Interfaces:
    java.io.Closeable, java.io.Flushable, java.lang.AutoCloseable
    Direct Known Subclasses:
    GassOutputStream

    public class HTTPOutputStream
    extends GlobusOutputStream
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected boolean append  
      private static byte[] CRLF  
      private static int DEFAULT_TIME  
      protected java.io.InputStream in  
      private static org.apache.commons.logging.Log logger  
      protected java.io.OutputStream output  
      protected long size  
      protected java.net.Socket socket  
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected HTTPOutputStream()
      Private constructor used by subclasses.
        HTTPOutputStream​(java.lang.String host, int port, java.lang.String file, long length, boolean append)
      Opens HTTP output stream (unsecure)
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void abort()
      Aborts transfer.
      private void checkForReply()  
      void close()  
      private void closeSocket()  
      private void finish()  
      void flush()  
      private void init​(java.lang.String host, int port, java.lang.String file, long length, boolean append)  
      protected void put​(java.lang.String host, java.lang.String file, long length, int waittime)  
      private void sleep​(int time)  
      void write​(byte[] msg)  
      void write​(byte[] msg, int from, int length)  
      void write​(int b)  
      • Methods inherited from class java.io.OutputStream

        nullOutputStream
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • logger

        private static org.apache.commons.logging.Log logger
      • CRLF

        private static final byte[] CRLF
      • output

        protected java.io.OutputStream output
      • in

        protected java.io.InputStream in
      • socket

        protected java.net.Socket socket
      • size

        protected long size
      • append

        protected boolean append
    • Constructor Detail

      • HTTPOutputStream

        protected HTTPOutputStream()
        Private constructor used by subclasses.
      • HTTPOutputStream

        public HTTPOutputStream​(java.lang.String host,
                                int port,
                                java.lang.String file,
                                long length,
                                boolean append)
                         throws GassException,
                                java.io.IOException
        Opens HTTP output stream (unsecure)
        Parameters:
        host - host name of the HTTP server.
        port - port number of the HTTP server.
        file - name of the file on the remote side.
        length - total size of the data to be transfered. Use -1 if unknown. The data then will be transfered in chunks.
        append - if true, append data to existing file. Otherwise, the file will be overwritten.
        Throws:
        GassException
        java.io.IOException
    • Method Detail

      • init

        private void init​(java.lang.String host,
                          int port,
                          java.lang.String file,
                          long length,
                          boolean append)
                   throws GassException,
                          java.io.IOException
        Throws:
        GassException
        java.io.IOException
      • sleep

        private void sleep​(int time)
      • put

        protected void put​(java.lang.String host,
                           java.lang.String file,
                           long length,
                           int waittime)
                    throws java.io.IOException
        Throws:
        java.io.IOException
      • checkForReply

        private void checkForReply()
                            throws java.io.IOException
        Throws:
        java.io.IOException
      • finish

        private void finish()
                     throws java.io.IOException
        Throws:
        java.io.IOException
      • closeSocket

        private void closeSocket()
      • abort

        public void abort()
        Description copied from class: GlobusOutputStream
        Aborts transfer. Usually makes sure to release all resources (sockets, file descriptors)
        Does nothing by default.
        Overrides:
        abort in class GlobusOutputStream
      • close

        public void close()
                   throws java.io.IOException
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Overrides:
        close in class java.io.OutputStream
        Throws:
        java.io.IOException
      • write

        public void write​(byte[] msg)
                   throws java.io.IOException
        Overrides:
        write in class java.io.OutputStream
        Throws:
        java.io.IOException
      • write

        public void write​(byte[] msg,
                          int from,
                          int length)
                   throws java.io.IOException
        Overrides:
        write in class java.io.OutputStream
        Throws:
        java.io.IOException
      • write

        public void write​(int b)
                   throws java.io.IOException
        Overrides:
        write in class GlobusOutputStream
        Throws:
        java.io.IOException
      • flush

        public void flush()
                   throws java.io.IOException
        Specified by:
        flush in interface java.io.Flushable
        Overrides:
        flush in class java.io.OutputStream
        Throws:
        java.io.IOException