package love.distributedrebirth.no2all.nostr;

import java.util.function.Consumer;

import love.distributedrebirth.no2all.nostr.fire.NoStrFireWaterBoiler;
import love.distributedrebirth.no2all.nostr.fire.NoStrFirePipe;
import love.distributedrebirth.no2all.nostr.model.NoStrIdentity;
import love.distributedrebirth.no2all.nostr.model.message.NoStrMsgToClient;
import love.distributedrebirth.no2all.nostr.model.message.NoStrMsgToRelay;

public enum NoStr {
	FACTORY;

	public NoStrFireWaterBoiler boiler(NoStrIdentity identity) {
		return new NoStrFireWaterBoiler(identity);
	}

	public NoStrFirePipe pipeReaderClient(Consumer<String> errHandler, Consumer<NoStrMsgToClient> msgHandler) {
		return new NoStrFirePipe(errHandler, null, msgHandler);
	}

	public NoStrFirePipe pipeReaderRelay(Consumer<String> errHandler, Consumer<NoStrMsgToRelay> msgHandler) {
		return new NoStrFirePipe(errHandler, msgHandler, null);
	}
}