diff options
-rw-r--r-- | src/Erebos/Network/Protocol.hs | 6 | ||||
-rw-r--r-- | src/Erebos/Service.hs | 5 |
2 files changed, 6 insertions, 5 deletions
diff --git a/src/Erebos/Network/Protocol.hs b/src/Erebos/Network/Protocol.hs index ac38588..f5183b3 100644 --- a/src/Erebos/Network/Protocol.hs +++ b/src/Erebos/Network/Protocol.hs @@ -3,6 +3,7 @@ module Erebos.Network.Protocol ( transportToObject, TransportHeader(..), TransportHeaderItem(..), + ServiceID(..), SecurityRequirement(..), WaitingRef(..), @@ -69,9 +70,9 @@ import Erebos.Flow import Erebos.Identity import Erebos.Network.Channel import Erebos.Object -import Erebos.Service import Erebos.Storable import Erebos.Storage +import Erebos.UUID (UUID) protocolVersion :: Text @@ -108,6 +109,9 @@ data TransportHeaderItem | StreamOpen Word8 deriving (Eq, Show) +newtype ServiceID = ServiceID UUID + deriving (Eq, Ord, Show, StorableUUID) + newtype Cookie = Cookie ByteString deriving (Eq, Show) diff --git a/src/Erebos/Service.hs b/src/Erebos/Service.hs index 753f58e..50bded6 100644 --- a/src/Erebos/Service.hs +++ b/src/Erebos/Service.hs @@ -32,10 +32,10 @@ import Data.Typeable import Erebos.Identity import {-# SOURCE #-} Erebos.Network +import Erebos.Network.Protocol import Erebos.State import Erebos.Storable import Erebos.Storage.Head -import Erebos.UUID (UUID) import Erebos.UUID qualified as U class ( @@ -104,9 +104,6 @@ someServiceEmptyGlobalState (SomeService p _) = SomeServiceGlobalState p (emptyS data SomeStorageWatcher s = forall a. Eq a => SomeStorageWatcher (Stored LocalState -> a) (a -> ServiceHandler s ()) -newtype ServiceID = ServiceID UUID - deriving (Eq, Ord, Show, StorableUUID) - mkServiceID :: String -> ServiceID mkServiceID = maybe (error "Invalid service ID") ServiceID . U.fromString |