-- | 'Reservation' constructor.
--
-- The fields accessible through corresponding lenses are:
--
-- * 'rGroups' @::@ ['GroupIdentifier']
--
-- * 'rInstances' @::@ ['Instance']
--
-- * 'rOwnerId' @::@ 'Text'
--
-- * 'rRequesterId' @::@ 'Maybe' 'Text'
--
-- * 'rReservationId' @::@ 'Text'
--
reservation :: Text -- ^ 'rReservationId'
            -> Text -- ^ 'rOwnerId'
            -> Reservation
reservation p1 p2 = Reservation
    { _rReservationId = p1
    , _rOwnerId       = p2
    , _rRequesterId   = Nothing
    , _rGroups        = mempty
    , _rInstances     = mempty
    }
reservation :: Text -- ^ 'rReservationId'
            -> Text -- ^ 'rOwnerId'
            -> Reservation
reservation p1 p2 = Reservation
    { _rReservationId = p1
    , _rOwnerId       = p2
    , _rRequesterId   = Nothing
    , _rGroups        = mempty
    , _rInstances     = mempty
    }
reservation p1 p2 = Reservation
    { _rReservationId = p1
    , _rOwnerId       = p2
    , _rRequesterId   = Nothing
    , _rGroups        = mempty
    , _rInstances     = mempty
    }