instana-haskell-trace-sdk-0.1.0.0: test/agent-stub/Instana/SDK/AgentStub/StubAPI.hs
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE TypeOperators #-}
module Instana.SDK.AgentStub.StubAPI
( StubAPI
, ResetAPI
) where
import Servant
import Instana.SDK.AgentStub.DiscoveryRequest (DiscoveryRequest)
import Instana.SDK.AgentStub.EntityDataRequest (EntityDataRequest)
import Instana.SDK.AgentStub.TraceRequest (Span)
type StubAPI =
-- GET /stub/ping
"ping"
:> GetNoContent '[JSON] NoContent
-- GET /stub/discoveries
:<|> "discoveries"
:> Get '[JSON] [DiscoveryRequest]
-- GET /stub/agent-ready
:<|> "agent-ready"
:> Get '[JSON] [String]
-- GET /stub/entity-data
:<|> "entity-data"
:> Get '[JSON] [EntityDataRequest]
-- GET /stub/spans
:<|> "spans"
:> Get '[JSON] [Span]
-- POST /stub/shutdown
:<|> "shutdown"
:> PostNoContent '[JSON] NoContent
:<|> "reset"
:> ResetAPI
type ResetAPI =
-- POST /stub/reset/discoveries
"discoveries"
:> PostNoContent '[JSON] NoContent
-- POST /stub/reset/agent-ready-requests
:<|> "spans"
:> PostNoContent '[JSON] NoContent