PMPpcEventPayloadIfc

Interface for working with PPCEvent without decoding message from flatbuffer bytearray

Samples

import android.content.Context
import android.content.IntentFilter
import com.sygic.profi.sdk.ifc.PMConstants
import com.sygic.profi.sdk.party.ppc.PMPpcEventPayload
import com.sygic.profi.sdk.party.ppc.PMPpcEventPayloadIfc
import com.sygic.profi.sdk.party.ppc.PMPpcEventPayloadReceiver
fun main() { 
   //sampleStart 
   class PPCProxy: PMPpcEventPayloadIfc {

    private val receiver = PMPpcEventPayloadReceiver(this)

    fun register(context: Context) {
        context.registerReceiver(receiver, IntentFilter(PMConstants.FILTER_PPC))
    }

    fun unregister(context: Context) {
        context.unregisterReceiver(receiver)
    }

    override fun broadcast(ppc: PMPpcEventPayload) {
        assert(ppc.payload.size > 0)
        assert(ppc.metadata.size > 0)
        // feel free to change this logic
        TODO("Allways send metadata to transport layer for small messages")
        if (ppc.bigFlag) {
            TODO("Send ppc.payload to trasport layer for big messages")
        }
    }

} 
   //sampleEnd
}

Functions

Link copied to clipboard
abstract fun broadcast(ppc: PMPpcEventPayload)

Method called by @see PMPpcEventPayloadReceiver