Home | History | Annotate | Download | only in opp
      1 /*
      2  * Copyright (c) 2008-2009, Motorola, Inc.
      3  *
      4  * All rights reserved.
      5  *
      6  * Redistribution and use in source and binary forms, with or without
      7  * modification, are permitted provided that the following conditions are met:
      8  *
      9  * - Redistributions of source code must retain the above copyright notice,
     10  * this list of conditions and the following disclaimer.
     11  *
     12  * - Redistributions in binary form must reproduce the above copyright notice,
     13  * this list of conditions and the following disclaimer in the documentation
     14  * and/or other materials provided with the distribution.
     15  *
     16  * - Neither the name of the Motorola, Inc. nor the names of its contributors
     17  * may be used to endorse or promote products derived from this software
     18  * without specific prior written permission.
     19  *
     20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
     21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     22  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     23  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
     24  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     25  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
     26  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
     27  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
     28  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     29  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     30  * POSSIBILITY OF SUCH DAMAGE.
     31  */
     32 
     33 package com.android.bluetooth.opp;
     34 
     35 import android.os.Handler;
     36 
     37 /**
     38  * Interface for control the state of an OBEX Session.
     39  */
     40 public interface BluetoothOppObexSession {
     41 
     42     /**
     43      * Message to notify when a transfer is completed For outbound share, it
     44      * means one file has been sent. For inbounds share, it means one file has
     45      * been received.
     46      */
     47     int MSG_SHARE_COMPLETE = 0;
     48 
     49     /**
     50      * Message to notify when a session is completed For outbound share, it
     51      * should be a consequence of session.stop() For inbounds share, it should
     52      * be a consequence of remote disconnect
     53      */
     54     int MSG_SESSION_COMPLETE = 1;
     55 
     56     /** Message to notify when a BluetoothOppObexSession get any error condition */
     57     int MSG_SESSION_ERROR = 2;
     58 
     59     /**
     60      * Message to notify when a BluetoothOppObexSession is interrupted when
     61      * waiting for remote
     62      */
     63     int MSG_SHARE_INTERRUPTED = 3;
     64 
     65     int MSG_CONNECT_TIMEOUT = 4;
     66 
     67     int SESSION_TIMEOUT = 50000;
     68 
     69     void start(Handler sessionHandler, int numShares);
     70 
     71     void stop();
     72 
     73     void addShare(BluetoothOppShareInfo share);
     74 
     75     void unblock();
     76 
     77 }
     78