Package freenet.clients.fcp

Source Code of freenet.clients.fcp.GeneratedMetadataMessage

package freenet.clients.fcp;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import freenet.node.Node;
import freenet.support.SimpleFieldSet;
import freenet.support.api.Bucket;
import freenet.support.api.BucketFactory;
import freenet.support.io.BucketTools;

public class GeneratedMetadataMessage extends BaseDataCarryingMessage {
 
  GeneratedMetadataMessage(String identifier, boolean global, Bucket data) {
    this.identifier = identifier;
    this.global = global;
    this.data = data;
  }
 
  private final Bucket data;
  final String identifier;
  final boolean global;
 
  static final String NAME = "GeneratedMetadata";

  @Override
  long dataLength() {
    return data.size();
  }

  @Override
  public void readFrom(InputStream is, BucketFactory bf, FCPServer server)
      throws IOException, MessageInvalidException {
    throw new UnsupportedOperationException();
  }

  @Override
  protected void writeData(OutputStream os) throws IOException {
    BucketTools.copyTo(data, os, data.size());
  }

  @Override
  public SimpleFieldSet getFieldSet() {
    SimpleFieldSet fs = new SimpleFieldSet(true);
    fs.putSingle("Identifier", identifier);
    fs.put("Global", global);
    fs.put("DataLength", data.size());
    return fs;
  }

  @Override
  public String getName() {
    return NAME;
  }

  @Override
  public void run(FCPConnectionHandler handler, Node node)
      throws MessageInvalidException {
    throw new UnsupportedOperationException();
  }

}
TOP

Related Classes of freenet.clients.fcp.GeneratedMetadataMessage

TOP
Copyright © 2018 www.massapi.com. 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.