protected static void inlineEncodeCallbackRequest ( final BinaryContext context, final IoBuffer data, final org.eclipse.scada.core.data.CallbackRequest value ) throws Exception { // number of fields data.put ( (byte)2 ); // encode attributes context.encodeString ( data, (byte)1, value.getType () ); context.encodeProperties ( data, (byte)2, value.getAttributes () ); }
private RequestMessage makeCallbackMessage ( final long callbackHandlerId, final Callback[] callbacks ) { final List<CallbackRequest> requests = new LinkedList<CallbackRequest> (); for ( final Callback cb : callbacks ) { requests.add ( new CallbackRequest ( cb.getType (), cb.buildRequestAttributes () ) ); } return new RequestCallbacks ( this.responseManager.nextRequest (), callbackHandlerId, requests, Callback.DEFAULT_TIMEOUT ); } }
protected static void inlineEncodeCallbackRequest ( final BinaryContext context, final IoBuffer data, final org.eclipse.scada.core.data.CallbackRequest value ) throws Exception { // number of fields data.put ( (byte)2 ); // encode attributes context.encodeString ( data, (byte)1, value.getType () ); context.encodeProperties ( data, (byte)2, value.getAttributes () ); }
return new org.eclipse.scada.core.data.CallbackRequest ( type, attributes );
private void handleRequestCallbacks ( final RequestCallbacks message ) { final CallbackHandler callbackHandler = this.callbackHandlerManager.getHandler ( message.getCallbackHandlerId () ); if ( callbackHandler == null || this.callbackFactory == null ) { // early abort sendMessage ( new RespondCallbacks ( new Response ( message.getRequest () ), allCallbacksCanceled ( message.getCallbacks ().size () ), null ) ); return; } // make array final Callback[] callbacks = new Callback[message.getCallbacks ().size ()]; // create callbacks from request int i = 0; for ( final CallbackRequest cr : message.getCallbacks () ) { callbacks[i] = this.callbackFactory.createCallback ( cr.getType (), cr.getAttributes () ); logger.debug ( "Created callback #{}: {}", i, callbacks[i] ); i++; } // start processing final NotifyFuture<Callback[]> future = this.callbackManager.processCallbacks ( callbackHandler, callbacks, message.getTimeoutMillis () ); future.addListener ( new FutureListener<Callback[]> () { @Override public void complete ( final Future<Callback[]> future ) { processCallbackFuture ( message.getRequest (), future, callbacks ); } } ); }
return new org.eclipse.scada.core.data.CallbackRequest ( type, attributes );
private void handleRequestCallbacks ( final RequestCallbacks message ) { final CallbackHandler callbackHandler = this.callbackHandlerManager.getHandler ( message.getCallbackHandlerId () ); if ( callbackHandler == null || this.callbackFactory == null ) { // early abort sendMessage ( new RespondCallbacks ( new Response ( message.getRequest () ), allCallbacksCanceled ( message.getCallbacks ().size () ), null ) ); return; } // make array final Callback[] callbacks = new Callback[message.getCallbacks ().size ()]; // create callbacks from request int i = 0; for ( final CallbackRequest cr : message.getCallbacks () ) { callbacks[i] = this.callbackFactory.createCallback ( cr.getType (), cr.getAttributes () ); logger.debug ( "Created callback #{}: {}", i, callbacks[i] ); i++; } // start processing final NotifyFuture<Callback[]> future = this.callbackManager.processCallbacks ( callbackHandler, callbacks, message.getTimeoutMillis () ); future.addListener ( new FutureListener<Callback[]> () { @Override public void complete ( final Future<Callback[]> future ) { processCallbackFuture ( message.getRequest (), future, callbacks ); } } ); }