/** * Copyright 2011 Steve Coughlan. * <p/> * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * <p/> * http://www.apache.org/licenses/LICENSE-2.0 * <p/> * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package net.bither.bitherj.message; import net.bither.bitherj.exception.ProtocolException; import java.io.IOException; import java.io.OutputStream; /** * Parent class for header only messages that don't have a payload. * Currently this includes getaddr, ping, verack as well as the special bitcoinj class UnknownMessage * * @author git */ public abstract class EmptyMessage extends Message { private static final long serialVersionUID = 8240801253854151802L; public EmptyMessage() { length = 0; } // public EmptyMessage() { // super(); // length = 0; // } public EmptyMessage(byte[] msg, int offset) throws ProtocolException { super(msg, offset, 0); length = 0; } @Override final protected void bitcoinSerializeToStream(OutputStream stream) throws IOException { } @Override public int getMessageSize() { return 0; } /* (non-Javadoc) * @see Message#parse() */ @Override protected void parse() throws ProtocolException { } /* (non-Javadoc) * @see Message#bitcoinSerialize() */ @Override public byte[] bitcoinSerialize() { return new byte[0]; } }