Newer
Older
KeeperJerry_Launcher / Launcher / source / request / CustomRequest.java
package launcher.request;

import launcher.helper.VerifyHelper;
import launcher.serialize.HInput;
import launcher.serialize.HOutput;

public abstract class CustomRequest<T> extends Request<T> {
	@Override
	public final Type getType() {
		return Type.CUSTOM;
	}

	@Override
	protected final T requestDo(HInput input, HOutput output) throws Exception {
		output.writeASCII(VerifyHelper.verifyIDName(getName()), 255);
		output.flush();

		// Custom request redirect
		return requestDoCustom(input, output);
	}

	public abstract String getName();

	protected abstract T requestDoCustom(HInput input, HOutput output);
}