Package TCM_MPI.CLS

Examples of TCM_MPI.CLS.TcmByteData


    private void SendWork(){
       
        while(this._TCM_SOCKET != null){
            try {
               
                TcmByteData DATA = this._SEND_QUEUE.take();
               
                if( this._TCM_SOCKET.SendBytes(DATA.getBytes()) ){
                }else{
                }
               
                Thread.sleep(CONST.SLEEP_SEND_TIME);
               
View Full Code Here


            HEADER_FILE.putInt(0);

            HEADER_FILE.putLong(this._PROC._FILE.length());
            HEADER_FILE.put(BYTES_FILE_NAME);
           
            TcmByteData HEADER_DATA = new TcmByteData();
            int POS = HEADER_FILE.position();
            HEADER_DATA.addRange(HEADER_FILE.array());
            HEADER_DATA.removeChunk(POS, HEADER_DATA.getsize() - POS);
            //  ENVIA A INFORMAÇÃO
            this._PROC._SEND_QUEUE.put(HEADER_DATA);
           
        }catch(Exception ex){           
        }
       
        for(int PACOTE_ATUAL = 1 ; PACOTE_ATUAL <= TOTAL_PACOTES; PACOTE_ATUAL++){
            boolean CONTINUE = false;
            //  CRIA O BUFFER
            ByteBuffer NUMS = ByteBuffer.allocate(CONST.BUFFER_SIZE);
           
            //  MONTA O CABEÇALHO DO PACOTE

            //  ID DO REMETENTE
            NUMS.putInt(this._PROC._PROC_ID);
            //  ID DO DESTINATARIO
            NUMS.putInt(this._PROC._DEST_ID);
            //  TIPO DE DADOS DE ENVIO : ????
            NUMS.putInt(this._PROC._TYPE_ID);
            //  TOTAL DE NUMEROS ENVADOS
            NUMS.putInt(this._PROC._NUMBER_TO_SEND);
            //  NUMERO DA SEQUÊNCA DO PACOTE
            NUMS.putLong(SEQUENCE_NUMBER);
            //  TOTAL DE PACOTES
            NUMS.putInt(TOTAL_PACOTES);
            //  NUMERO DO PACOTE ATUAL
            NUMS.putInt(PACOTE_ATUAL);
            //  POSICAO ATUAL DE LEITURA NO ARQUIVO
            NUMS.putLong(INDEX);
            //  EMQUANTO NÃO ULTRAPASSAR O LIMITE DE ITEMS POR PACOTE
            for(int ELEMENTO = 0 ; ELEMENTO < NUMEROS_POR_PACOTE ; ELEMENTO++){
                //  ADICIONA O NUMERO AO PACOTE
                InsertNumber(NUMS, INDEX);
                //  INCREMENTA O INDICE
                INDEX++;
                //  SE O INDICE ALCANÇOU O TOTAL SAI DOS DOIS LAÇOS
                if(StopInsert(INDEX)){
                    CONTINUE = true;
                    break;
                }
            }

            //  PEGA A POSIÇÃO DO BUFFER
            int BYTEBUFFER_POS = NUMS.position();
            //  OBJETO DE ENVIO
            TcmByteData CKX_BYTE = new TcmByteData();
            // INSERI OS BYTES NO OBJETO DE ENVIO
            CKX_BYTE.addRange(NUMS.array());
            // LIBERA O BUFFER
            NUMS = null;

            //  REMOVE OS ESPAÇOS DESNECESSARIOS DO PACOTE
            CKX_BYTE.removeChunk(BYTEBUFFER_POS, CKX_BYTE.getsize() - BYTEBUFFER_POS);
           
            try {
                //  ENVIA A INFORMAÇÃO
                this._PROC._SEND_QUEUE.put(CKX_BYTE);
            } catch (Exception ex) {
View Full Code Here

            }

            //  PEGA A POSIÇÃO DO BUFFER
            int BYTEBUFFER_POS = NUMS.position();
            //  OBJETO DE ENVIO
            TcmByteData CKX_BYTE = new TcmByteData();
            // INSERI OS BYTES NO OBJETO DE ENVIO
            CKX_BYTE.addRange(NUMS.array());
            // LIBERA O BUFFER
            NUMS = null;

            //  REMOVE OS ESPAÇOS DESNECESSARIOS DO PACOTE
            CKX_BYTE.removeChunk(BYTEBUFFER_POS, CKX_BYTE.getsize() - BYTEBUFFER_POS);
           
            try {
                //  ENVIA A INFORMAÇÃO
                this._PROC._SEND_QUEUE.put(CKX_BYTE);
            } catch (Exception ex) {
View Full Code Here

TOP

Related Classes of TCM_MPI.CLS.TcmByteData

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.