
com.github.moaxcp.x11.protocol.XProtocolPlugin Maven / Gradle / Ivy
package com.github.moaxcp.x11.protocol;
import java.io.IOException;
import java.util.Optional;
public interface XProtocolPlugin {
String getPluginName();
Optional getExtensionXName();
Optional getExtensionName();
Optional getExtensionMultiword();
Optional getMajorVersion();
Optional getMinorVersion();
byte getMajorOpcode();
void setMajorOpcode(byte firstOpcode);
byte getFirstEvent();
void setFirstEvent(byte firstEvent);
byte getFirstError();
void setFirstError(byte firstError);
boolean supportedRequest(XRequest request);
boolean supportedRequest(byte majorOpcode, byte minorOpcode);
boolean supportedEvent(byte number);
boolean supportedError(byte code);
T readRequest(byte majorOpcode, byte minorOpcode, X11Input in) throws IOException;
T readEvent(byte number, boolean sentEvent, X11Input in) throws IOException;
T readError(byte code, X11Input in) throws IOException;
T readGenericEvent(boolean sentEvent, byte extension, short sequenceNumber, int length, short eventType, X11Input in) throws IOException;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy