package it.paspiz85.nanobot.platform; import it.paspiz85.nanobot.exception.BotConfigurationException; import it.paspiz85.nanobot.util.Point; import it.paspiz85.nanobot.util.Size; import it.paspiz85.nanobot.util.Utils; import java.awt.Color; import java.awt.image.BufferedImage; import java.util.function.Consumer; /** * Default platform if recognition fails. * * @author paspiz85 * */ public class UnsupportedPlatform extends AbstractPlatform { private static final String MESSAGE = "Platform not supported"; public static UnsupportedPlatform instance() { return Utils.singleton(UnsupportedPlatform.class, () -> new UnsupportedPlatform()); } protected UnsupportedPlatform() { } @Override protected void doApplySize(final Size resolution) throws BotConfigurationException { throw new UnsupportedOperationException(MESSAGE); } @Override protected void doKeyPress(final int keyCode, final boolean shifted) throws InterruptedException { throw new UnsupportedOperationException(MESSAGE); } @Override protected void doLeftClick(final Point point) throws InterruptedException { throw new UnsupportedOperationException(MESSAGE); } @Override protected BufferedImage doScreenshot(final Point p1, final Point p2) { throw new UnsupportedOperationException(MESSAGE); } @Override protected void doSingleZoomUp() throws InterruptedException { throw new UnsupportedOperationException(MESSAGE); } @Override protected void doWrite(final String s) throws InterruptedException { throw new UnsupportedOperationException(MESSAGE); } @Override protected Size getActualSize() { throw new UnsupportedOperationException(MESSAGE); } @Override protected Color getColor(final Point point) { throw new UnsupportedOperationException(MESSAGE); } @Override public Size getExpectedSize() { throw new UnsupportedOperationException(MESSAGE); } @Override protected boolean registerForClick(final Consumer<Point> clickConsumer) { throw new UnsupportedOperationException(MESSAGE); } @Override protected void setup() throws BotConfigurationException { throw new UnsupportedOperationException(MESSAGE); } }