Re: [G2R] ORBit2 / linc non-blocking API: change request



On Fri, Dec 28, 2001 at 10:50:55AM +0000, Michael Meeks wrote:
> 
> [ a not altogether unexpected occurence ] - I've written a chunk of code
> in linc to do explicit buffering, and a capability to sever a connection
> that appears to be not responding ( based on the size of the buffer in
> bytes ).
Hmm, the change itself would be ok to go in, but your description of
it makes me wonder if it will be usable in all situations.  The
gnumeric -> guppi connection sometimes pumps big chunks of data
across.  I'd like to be sure that the connection breaker is either
optional, or takes the number of pending msgs into account along
with the outstanding byte count.

> Index: include/orbit/orb-core/orbit-small.h
> +typedef struct _ORBitConnection ORBitConnection;
> +
> +ORBitConnection *ORBit_small_get_connection      (CORBA_Object    obj);
> +void             ORBit_connection_set_max_buffer (ORBitConnection *cnx,
> +						   gulong max_bytes);
 
> 
> Index: include/linc/linc-connection.h
> +typedef struct _LINCWriteOpts         LINCWriteOpts;
> ...
>  	/* signals */
>  	void     (* broken)        (LINCConnection      *cnx);
> +	/*
> +	 * Emitted when the buffer is emptied, half full or
> +	 * before disconnect
> +	 */
> +	void     (* blocking)      (LINCConnection      *cnx,
> +				    gulong               buffer_size);
>  } LINCConnectionClass;

Given that linc is basicly an ORBit2 internal library and this
change is strictly a signal addition  it safe to go in even this far
into the freeze.  If there is the potential for more change in the
future you may want to add some placeholders for future expansion
while you're at it.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]