@ -42,11 +42,12 @@ type GosmAdapter interface {
GetJson ( ) CarrierJson
GetBuffer ( ) [ ] byte
WsContainerSend ( WsCommunicationMethod , * websocket . Conn , context . Context ) ( error , interface { } )
WsContainerReceive ( WsCommunicationMethod , * websocket . Conn , context . Context , interface { } ) ( error , interface { } , interface { } , websocket . MessageType )
WsContainerReceive ( WsCommunicationMethod , * websocket . Conn , context . Context , interface { } ) ( error , interface { } , websocket . MessageType )
}
func ( r * GosmContainer ) RevalueJson ( dosth func ( CarrierJson ) CarrierJson ) { // Überarbeite den Carrier, setze ein Ergebnis ein etc.
( * r ) . CarrierJson = dosth ( ( * r ) . CarrierJson )
( * r ) . ConvertJson2Buffer ( )
}
func ( r * GosmContainer ) ConvertJson2Buffer ( ) ( err error ) {
@ -66,6 +67,7 @@ func (r *GosmContainer) ConvertBuffer2Json() (err error) {
func ( r * GosmContainer ) SetJson ( cj CarrierJson ) {
( * r ) . CarrierJson = cj
( * r ) . ConvertJson2Buffer ( )
}
func ( r * GosmContainer ) GetJson ( ) CarrierJson {
@ -74,37 +76,38 @@ func (r *GosmContainer) GetJson() CarrierJson {
func ( r * GosmContainer ) SetBuffer ( bb [ ] byte ) {
( * r ) . CarrierBuffer = bb
( * r ) . ConvertBuffer2Json ( )
}
func ( r * GosmContainer ) GetBuffer ( ) [ ] byte {
return ( * r ) . CarrierBuffer
}
func ( r * GosmContainer ) WsContainerSend ( method WsCommunicationMethod , conn * websocket . Conn , ctx context . Context ) ( err error , response interface { } ) {
func ( r * GosmContainer ) WsContainerSend ( method WsCommunicationMethod , conn * websocket . Conn , ctx context . Context ) ( err error , his response interface { } ) {
switch method {
case SendJsonMethod :
err , response = WsjsonSend ( ctx , conn , ( * r ) . CarrierJson )
err , his response = WsjsonSend ( ctx , conn , ( * r ) . CarrierJson )
//(*r).CarrierJson = tmpreceiveval.(CarrierJson) //Überschreibe alten Wert?
case SendTextMethod :
//err, (*r).CarrierBuffer = WsSend(ctx, conn, (*r).CarrierBuffer, websocket.MessageText)
err , response = WsSend ( ctx , conn , ( * r ) . CarrierBuffer , websocket . MessageText )
err , his response = WsSend ( ctx , conn , ( * r ) . CarrierBuffer , websocket . MessageText )
case SendBinaryMethod :
//err, (*r).CarrierBuffer = WsSend(ctx, conn, (*r).CarrierBuffer, websocket.MessageBinary)
err , response = WsSend ( ctx , conn , ( * r ) . CarrierBuffer , websocket . MessageBinary )
err , his response = WsSend ( ctx , conn , ( * r ) . CarrierBuffer , websocket . MessageBinary )
default :
err = errors . New ( "Wrong communicator method" )
}
return
}
func ( r * GosmContainer ) WsContainerReceive ( method WsCommunicationMethod , conn * websocket . Conn , ctx context . Context , dosth interface { } ) ( err error , receiveval, sendval interface { } , mtr websocket . MessageType ) {
func ( r * GosmContainer ) WsContainerReceive ( method WsCommunicationMethod , conn * websocket . Conn , ctx context . Context , dosth interface { } ) ( err error , myresponse interface { } , mtr websocket . MessageType ) {
switch {
case method == ReceiveTextMethod || method == ReceiveBinaryMethod :
err , receiveval , sendval , mtr = WsReceive ( ctx , conn , dosth . ( func ( [ ] byte ) [ ] byte ) )
err , receiveval , myrespon se, mtr = WsReceive ( ctx , conn , dosth . ( func ( [ ] byte ) [ ] byte ) )
( * r ) . CarrierBuffer = receiveval . ( [ ] byte )
( * r ) . ConvertBuffer2Json ( )
case method == ReceiveJsonMethod :
err , receiveval , sendval = WsjsonReceive ( ctx , conn , dosth . ( func ( interface { } ) interface { } ) )
err , receiveval , myrespon se = WsjsonReceive ( ctx , conn , dosth . ( func ( interface { } ) interface { } ) )
mtr = websocket . MessageText
( * r ) . CarrierJson = receiveval . ( CarrierJson )
( * r ) . ConvertJson2Buffer ( )