Packet nach Shared verschoben
This commit is contained in:
@@ -4,7 +4,13 @@ import android.util.Log;
|
||||
|
||||
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.nio.ByteBuffer;
|
||||
import java.text.DateFormat;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Calendar;
|
||||
import java.util.Date;
|
||||
import java.util.Locale;
|
||||
|
||||
|
||||
/**
|
||||
* Created by JettenM on 05.07.2016.
|
||||
@@ -15,29 +21,73 @@ public class Packet {
|
||||
public int SenderPersonOid;
|
||||
public int RecipientPersonOid;
|
||||
public String ChatMessage;
|
||||
public Date MessageTimeStamp;
|
||||
public String Tenant;
|
||||
|
||||
public Packet() {
|
||||
ChatDataIdentifier = DataIdentifier.NULL;
|
||||
ChatMessage = null;
|
||||
ChatName = null;
|
||||
SenderPersonOid = 0;
|
||||
ChatMessage = "";
|
||||
ChatName = SoapConnectionManager.User.getFullName();
|
||||
Tenant = "";
|
||||
SenderPersonOid = SoapConnectionManager.User.getPersonOid().intValue();
|
||||
RecipientPersonOid = 0;
|
||||
|
||||
MessageTimeStamp = Calendar.getInstance().getTime();
|
||||
}
|
||||
|
||||
public String getFormattedMessageTimeStamp() {
|
||||
DateFormat df = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss");
|
||||
return df.format(MessageTimeStamp);
|
||||
}
|
||||
|
||||
public Packet(byte[] dataStream) {
|
||||
ChatDataIdentifier = DataIdentifier.values()[ByteBuffer.allocate(4).getInt()];
|
||||
//Aufbau Message:
|
||||
// die ersten fünf ";" ignorieren
|
||||
// SenderOid;RecipientOid;ClientNameLength;MessageLength;ChatDataIdentifier;Tenant;[ClientName][ChatMessage][MessageTimeStamp]
|
||||
|
||||
//23;281;20;389;1;[Tenant]; 6 Semikola
|
||||
|
||||
public Packet(String message) {
|
||||
String[] gesplittet = message.split(";");
|
||||
|
||||
String senderPersonOidString = gesplittet[0];
|
||||
String recipientPersonOidString = gesplittet[1];
|
||||
String chatNameLengthString = gesplittet[2];
|
||||
String chatMessageLengthString = gesplittet[3];
|
||||
String chatIdentifierString = gesplittet[4];
|
||||
Tenant = gesplittet[5];
|
||||
|
||||
SenderPersonOid = Integer.parseInt(senderPersonOidString);
|
||||
RecipientPersonOid = Integer.parseInt(recipientPersonOidString);
|
||||
|
||||
ChatDataIdentifier = DataIdentifier.getEnumValue(Integer.parseInt(chatIdentifierString));
|
||||
|
||||
int chatNameLength = Integer.parseInt(chatNameLengthString);
|
||||
int chatMessageLength = Integer.parseInt(chatMessageLengthString);
|
||||
|
||||
int headerLength = senderPersonOidString.length() + recipientPersonOidString.length() + chatNameLengthString.length() + chatMessageLengthString.length() + chatIdentifierString.length() + Tenant.length() + 7;
|
||||
String actualMessage = message.substring(headerLength - 1);
|
||||
|
||||
ChatName = actualMessage.substring(0, chatNameLength);
|
||||
|
||||
ChatMessage = actualMessage.substring(chatNameLength, chatMessageLength + chatNameLength);
|
||||
|
||||
String dateString = actualMessage.substring(chatMessageLength + chatNameLength);
|
||||
|
||||
DateFormat df = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss", Locale.GERMAN);
|
||||
try {
|
||||
MessageTimeStamp = df.parse(dateString);
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public byte[] GetDataStream() {
|
||||
|
||||
String dataStreamAsString = "" + SenderPersonOid + ";" + RecipientPersonOid + ";" + ChatName.length() + ";" + ChatMessage.length() + ";";
|
||||
String dataStreamAsString = "" + SenderPersonOid + ";" + RecipientPersonOid + ";" + ChatName.length() + ";" + ChatMessage.length()+ ";" + ChatDataIdentifier.getValue() + ";" + Tenant + ";";
|
||||
|
||||
dataStreamAsString += ChatName + ChatMessage;
|
||||
dataStreamAsString += ChatName + ChatMessage + getFormattedMessageTimeStamp();
|
||||
|
||||
byte[] blaaah = new byte[1024];
|
||||
byte[] blaaah = new byte[dataStreamAsString.length()];
|
||||
|
||||
try {
|
||||
blaaah = dataStreamAsString.getBytes("UTF8");
|
||||
|
||||
Reference in New Issue
Block a user