protected synchronized void handleCloseQuery ( final CloseQuery message ) { final Profiler p = new Profiler ( "Close Query" ); p.setLogger ( logger ); p.start ( "init" ); // get the query id final long queryId = message.getQueryId (); logger.info ( "Handle close query: {}", queryId ); final QueryHandler handler; p.start ( "remove" ); sendQueryState ( queryId, QueryState.DISCONNECTED ); handler = this.queries.remove ( queryId ); // close outside of lock if ( handler != null ) { p.start ( "Close" ); // throw it in the disposer queue ... the storage module takes too long this.queryDisposer.execute ( new Runnable () { @Override public void run () { logger.info ( "Disposing query {} ...", queryId ); handler.close (); logger.info ( "Disposing query {} ... done!", queryId ); } } ); } p.stop ().log (); }
protected synchronized void handleCloseQuery ( final CloseQuery message ) { final Profiler p = new Profiler ( "Close Query" ); p.setLogger ( logger ); p.start ( "init" ); // get the query id final long queryId = message.getQueryId (); logger.info ( "Handle close query: {}", queryId ); final QueryHandler handler; p.start ( "remove" ); sendQueryState ( queryId, QueryState.DISCONNECTED ); handler = this.queries.remove ( queryId ); // close outside of lock if ( handler != null ) { p.start ( "Close" ); // throw it in the disposer queue ... the storage module takes too long this.queryDisposer.execute ( new Runnable () { @Override public void run () { logger.info ( "Disposing query {} ...", queryId ); handler.close (); logger.info ( "Disposing query {} ... done!", queryId ); } } ); } p.stop ().log (); }
@Override public IoBuffer encodeMessage ( final BinaryContext context, final Object objectMessage ) throws Exception { final org.eclipse.scada.hd.data.message.CloseQuery value = (org.eclipse.scada.hd.data.message.CloseQuery)objectMessage; final IoBuffer data = IoBuffer.allocate ( 64 ); data.setAutoExpand ( true ); // encode message base data.putInt ( MESSAGE_CODE ); // number of fields data.put ( (byte)1 ); // encode attributes context.encodePrimitiveLong ( data, (byte)1, value.getQueryId () ); data.flip (); return data; }
@Override public IoBuffer encodeMessage ( final BinaryContext context, final Object objectMessage ) throws Exception { final org.eclipse.scada.hd.data.message.CloseQuery value = (org.eclipse.scada.hd.data.message.CloseQuery)objectMessage; final IoBuffer data = IoBuffer.allocate ( 64 ); data.setAutoExpand ( true ); // encode message base data.putInt ( MESSAGE_CODE ); // number of fields data.put ( (byte)1 ); // encode attributes context.encodePrimitiveLong ( data, (byte)1, value.getQueryId () ); data.flip (); return data; }