Kore/app/src/testUtils/java/org/xbmc/kore/testutils/eventserver/EventPacketBUTTON.java

65 lines
1.9 KiB
Java

/*
* Copyright 2017 Martijn Brekhof. All rights reserved.
*
* 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
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* 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 org.xbmc.kore.testutils.eventserver;
import java.nio.ByteBuffer;
public class EventPacketBUTTON extends EventPacket {
private short code;
private String mapName;
private String buttonName;
private boolean repeat;
private boolean down;
private boolean queue;
private short amount;
private byte axis;
private short flags;
public EventPacketBUTTON(byte[] packet) {
super(packet);
byte[] payload = getPayload();
code = ByteBuffer.wrap(payload, 0, 2).getShort();
flags = ByteBuffer.wrap(payload, 2, 2).getShort();
amount = ByteBuffer.wrap(payload, 4, 2).getShort();
mapName = getStringFromPayload(payload, 6);
int nextStringPosition = 6 + mapName.getBytes().length + 1;
buttonName = getStringFromPayload(payload, nextStringPosition);
}
public String getButtonName() {
return buttonName;
}
public String getMapName() {
return mapName;
}
@Override
public String toString() {
return super.toString() +
", code: " + code +
", flags: " + flags +
", amount: " + amount +
", mapName: " + mapName +
", buttonName: " + buttonName;
}
}