solution: access logging for GetBalance method
This commit is contained in:
@@ -38,7 +38,8 @@ class AccessHandler(
|
|||||||
|
|
||||||
return when (val method = call.methodDescriptor.bareMethodName) {
|
return when (val method = call.methodDescriptor.bareMethodName) {
|
||||||
"SubscribeHead" -> processSubscribeHead(call, headers, next)
|
"SubscribeHead" -> processSubscribeHead(call, headers, next)
|
||||||
"SubscribeBalance" -> processSubscribeBalance(call, headers, next)
|
"SubscribeBalance" -> processSubscribeBalance(call, headers, next, true)
|
||||||
|
"GetBalance" -> processSubscribeBalance(call, headers, next, false)
|
||||||
"NativeCall" -> processNativeCall(call, headers, next)
|
"NativeCall" -> processNativeCall(call, headers, next)
|
||||||
else -> {
|
else -> {
|
||||||
log.trace("unsupported method `{}`", method)
|
log.trace("unsupported method `{}`", method)
|
||||||
@@ -67,9 +68,10 @@ class AccessHandler(
|
|||||||
private fun <ReqT : Any, RespT : Any> processSubscribeBalance(
|
private fun <ReqT : Any, RespT : Any> processSubscribeBalance(
|
||||||
call: ServerCall<ReqT, RespT>,
|
call: ServerCall<ReqT, RespT>,
|
||||||
headers: Metadata,
|
headers: Metadata,
|
||||||
next: ServerCallHandler<ReqT, RespT>
|
next: ServerCallHandler<ReqT, RespT>,
|
||||||
|
subscribe: Boolean
|
||||||
): ServerCall.Listener<ReqT> {
|
): ServerCall.Listener<ReqT> {
|
||||||
val builder = EventsBuilder.SubscribeBalance()
|
val builder = EventsBuilder.SubscribeBalance(subscribe)
|
||||||
.start(headers, call.attributes)
|
.start(headers, call.attributes)
|
||||||
val callWrapper: ServerCall<ReqT, RespT> = OnSubscribeBalanceResponse(
|
val callWrapper: ServerCall<ReqT, RespT> = OnSubscribeBalanceResponse(
|
||||||
call as ServerCall<BlockchainOuterClass.BalanceRequest, BlockchainOuterClass.AddressBalance>, builder, accessLogWriter) as ServerCall<ReqT, RespT>
|
call as ServerCall<BlockchainOuterClass.BalanceRequest, BlockchainOuterClass.AddressBalance>, builder, accessLogWriter) as ServerCall<ReqT, RespT>
|
||||||
|
|||||||
@@ -48,14 +48,14 @@ class Events {
|
|||||||
|
|
||||||
@JsonInclude(JsonInclude.Include.NON_NULL)
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
class SubscribeBalance(
|
class SubscribeBalance(
|
||||||
blockchain: Chain, id: UUID,
|
blockchain: Chain, id: UUID, subscribe: Boolean,
|
||||||
// initial request details
|
// initial request details
|
||||||
val request: StreamRequestDetails,
|
val request: StreamRequestDetails,
|
||||||
val balanceRequest: BalanceRequest,
|
val balanceRequest: BalanceRequest,
|
||||||
val addressBalance: AddressBalance,
|
val addressBalance: AddressBalance,
|
||||||
// index of the current response
|
// index of the current response
|
||||||
val index: Int
|
val index: Int
|
||||||
) : ChainBase(blockchain, "SubscribeBalance", id)
|
) : ChainBase(blockchain, if (subscribe) "SubscribeBalance" else "GetBalance", id)
|
||||||
|
|
||||||
@JsonInclude(JsonInclude.Include.NON_NULL)
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
class NativeCall(
|
class NativeCall(
|
||||||
|
|||||||
@@ -132,7 +132,7 @@ class EventsBuilder {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class SubscribeBalance() : Base<SubscribeBalance>() {
|
class SubscribeBalance(val subscribe: Boolean) : Base<SubscribeBalance>() {
|
||||||
private var index = 0
|
private var index = 0
|
||||||
private var balanceRequest: Events.BalanceRequest? = null
|
private var balanceRequest: Events.BalanceRequest? = null
|
||||||
|
|
||||||
@@ -155,7 +155,7 @@ class EventsBuilder {
|
|||||||
val addressBalance = Events.AddressBalance(resp.asset.code, resp.address.address)
|
val addressBalance = Events.AddressBalance(resp.asset.code, resp.address.address)
|
||||||
val chain = Chain.byId(resp.asset.chain.number)
|
val chain = Chain.byId(resp.asset.chain.number)
|
||||||
return Events.SubscribeBalance(
|
return Events.SubscribeBalance(
|
||||||
chain, UUID.randomUUID(), requestDetails, balanceRequest!!, addressBalance, index++
|
chain, UUID.randomUUID(), subscribe, requestDetails, balanceRequest!!, addressBalance, index++
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user