Package net.tomp2p.message

Examples of net.tomp2p.message.Buffer


      master = peers[0];
      UtilsDHT2.perfectRouting(peers);
      // do testing
      ByteBuf c = Unpooled.buffer();
      c.writeInt(77);
      Buffer b = new Buffer(c);
      peers[50].peer().rawDataReply(new RawDataReply() {
        @Override
        public Buffer reply(PeerAddress sender, Buffer requestBuffer, boolean complete) {
          System.err.println(requestBuffer.buffer().readInt());
          ByteBuf c = Unpooled.buffer();
          c.writeInt(88);
          Buffer ret = new Buffer(c);
          return ret;
        }
      });
      FutureDirect fd = master.peer().sendDirect(peers[50].peerAddress()).buffer(b).start();
      fd.await();
View Full Code Here


      master = peers[0];
      UtilsDHT2.perfectRouting(peers);
      // do testing
      ByteBuf c = Unpooled.buffer();
      c.writeInt(77);
      Buffer b = new Buffer(c);
      peers[50].peer().rawDataReply(new RawDataReply() {
        @Override
        public Buffer reply(PeerAddress sender, Buffer requestBuffer, boolean complete) {
          System.err.println("got it");
          return requestBuffer;
View Full Code Here

        public Buffer reply(PeerAddress sender, Buffer requestBuffer, boolean last) throws Exception {
          final byte[] b1 = new byte[10000];
          int i = requestBuffer.buffer().getInt(0);
          ByteBuf buf = Unpooled.wrappedBuffer(b1);
          buf.setInt(0, i);
          return new Buffer(buf);
        }
      });
      List<BaseFuture> list1 = new ArrayList<BaseFuture>();
      List<BaseFuture> list2 = new ArrayList<BaseFuture>();
      List<FuturePeerConnection> list3 = new ArrayList<FuturePeerConnection>();
      for (int i = 0; i < 125; i++) {
        final byte[] b = new byte[10000];
        FuturePeerConnection pc = master.createPeerConnection(slave.peerAddress());
        list1.add(master.sendDirect(pc).buffer(new Buffer(Unpooled.wrappedBuffer(b))).start());
        list3.add(pc);
        // pc.close();
      }
      for (int i = 0; i < 20000; i++) {
        list2.add(master.discover().peerAddress(slave.peerAddress()).start());
        final byte[] b = new byte[10000];
        byte[] me = Utils.intToByteArray(i);
        System.arraycopy(me, 0, b, 0, 4);
        list2.add(master.sendDirect(slave.peerAddress()).buffer(new Buffer(Unpooled.wrappedBuffer(b)))
                .start());
      }
      for (BaseFuture bf : list1) {
        bf.awaitListenersUninterruptibly();
        if (bf.isFailed()) {
View Full Code Here

  private void send2(final PeerDHT p1, final PeerDHT p2, final ByteBuf toStore1, final int count) throws IOException {
    if (count == 0) {
      return;
    }
    Buffer b = new Buffer(toStore1);
    FutureDirect fd = p1.peer().sendDirect(p2.peerAddress()).buffer(b).start();
    fd.addListener(new BaseFutureAdapter<FutureDirect>() {
      @Override
      public void operationComplete(FutureDirect future) throws Exception {
        if (future.isFailed()) {
View Full Code Here

            message.buffer(sendDirectBuilder.buffer());
        } else {
            byte[] me;
            try {
                me = Utils.encodeJavaObject(sendDirectBuilder.object());
                message.buffer(new Buffer(Unpooled.wrappedBuffer(me)));
            } catch (IOException e) {
                futureResponse.failed("cannot convert object", e);
            }      
        }
View Full Code Here

        if (message.type() == Type.REQUEST_1 && rawDataReply2 == null) {
            responseMessage.type(Type.NOT_FOUND);
        } else if (message.type() == Type.REQUEST_2 && objectDataReply2 == null) {
            responseMessage.type(Type.NOT_FOUND);
        } else {
            final Buffer requestBuffer = message.buffer(0);
            // the user can reply with null, indicating not found. Or
            // returning the request buffer, which means nothing is
            // returned. Or an exception can be thrown
            if (message.type() == Type.REQUEST_1) {
                LOG.debug("handling request1");
                final Buffer replyBuffer = rawDataReply2.reply(message.sender(), requestBuffer,
                        message.isDone());
                if (replyBuffer == null && message.isDone()) {
                    responseMessage.type(Type.NOT_FOUND);
                } else if (replyBuffer != requestBuffer) {
                    // can be partial as well
                    if (!replyBuffer.isComplete()) {
                        responseMessage.streaming();
                    }
                    responseMessage.buffer(replyBuffer);
                }
            } else { // no streaming here when we deal with objects
                Object obj = Utils.decodeJavaObject(requestBuffer.buffer());
                LOG.debug("handling {}", obj);

                Object reply = objectDataReply2.reply(message.sender(), obj);
                if (reply == null) {
                    responseMessage.type(Type.NOT_FOUND);
                } else if (reply == obj) {
                    responseMessage.type(Type.OK);
                } else {
                    byte[] me = Utils.encodeJavaObject(reply);
                    responseMessage.buffer(new Buffer(Unpooled.wrappedBuffer(me)));
                }
            }
        }
        responder.response(responseMessage);
    }
View Full Code Here

      buffer = RelayUtils.composeMessageBuffer(readyToSend, connectionBean().channelServer().channelServerConfiguration().signatureFactory());
      readyToSend.clear();
    }

    lastUpdate.set(System.currentTimeMillis());
    return new Buffer(buffer);
  }
View Full Code Here

TOP

Related Classes of net.tomp2p.message.Buffer

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.