{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE StrictData #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -fno-warn-unused-binds #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} {-# OPTIONS_GHC -fno-warn-unused-matches #-} -- Derived from AWS service descriptions, licensed under Apache 2.0. -- | -- Module : Amazonka.SageMaker.DescribeContext -- Copyright : (c) 2013-2023 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) -- -- Describes a context. module Amazonka.SageMaker.DescribeContext ( -- * Creating a Request DescribeContext (..), newDescribeContext, -- * Request Lenses describeContext_contextName, -- * Destructuring the Response DescribeContextResponse (..), newDescribeContextResponse, -- * Response Lenses describeContextResponse_contextArn, describeContextResponse_contextName, describeContextResponse_contextType, describeContextResponse_createdBy, describeContextResponse_creationTime, describeContextResponse_description, describeContextResponse_lastModifiedBy, describeContextResponse_lastModifiedTime, describeContextResponse_lineageGroupArn, describeContextResponse_properties, describeContextResponse_source, describeContextResponse_httpStatus, ) where import qualified Amazonka.Core as Core import qualified Amazonka.Core.Lens.Internal as Lens import qualified Amazonka.Data as Data import qualified Amazonka.Prelude as Prelude import qualified Amazonka.Request as Request import qualified Amazonka.Response as Response import Amazonka.SageMaker.Types -- | /See:/ 'newDescribeContext' smart constructor. data DescribeContext = DescribeContext' { -- | The name of the context to describe. contextName :: Prelude.Text } deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic) -- | -- Create a value of 'DescribeContext' with all optional fields omitted. -- -- Use or to modify other optional fields. -- -- The following record fields are available, with the corresponding lenses provided -- for backwards compatibility: -- -- 'contextName', 'describeContext_contextName' - The name of the context to describe. newDescribeContext :: -- | 'contextName' Prelude.Text -> DescribeContext newDescribeContext pContextName_ = DescribeContext' {contextName = pContextName_} -- | The name of the context to describe. describeContext_contextName :: Lens.Lens' DescribeContext Prelude.Text describeContext_contextName = Lens.lens (\DescribeContext' {contextName} -> contextName) (\s@DescribeContext' {} a -> s {contextName = a} :: DescribeContext) instance Core.AWSRequest DescribeContext where type AWSResponse DescribeContext = DescribeContextResponse request overrides = Request.postJSON (overrides defaultService) response = Response.receiveJSON ( \s h x -> DescribeContextResponse' Prelude.<$> (x Data..?> "ContextArn") Prelude.<*> (x Data..?> "ContextName") Prelude.<*> (x Data..?> "ContextType") Prelude.<*> (x Data..?> "CreatedBy") Prelude.<*> (x Data..?> "CreationTime") Prelude.<*> (x Data..?> "Description") Prelude.<*> (x Data..?> "LastModifiedBy") Prelude.<*> (x Data..?> "LastModifiedTime") Prelude.<*> (x Data..?> "LineageGroupArn") Prelude.<*> (x Data..?> "Properties" Core..!@ Prelude.mempty) Prelude.<*> (x Data..?> "Source") Prelude.<*> (Prelude.pure (Prelude.fromEnum s)) ) instance Prelude.Hashable DescribeContext where hashWithSalt _salt DescribeContext' {..} = _salt `Prelude.hashWithSalt` contextName instance Prelude.NFData DescribeContext where rnf DescribeContext' {..} = Prelude.rnf contextName instance Data.ToHeaders DescribeContext where toHeaders = Prelude.const ( Prelude.mconcat [ "X-Amz-Target" Data.=# ("SageMaker.DescribeContext" :: Prelude.ByteString), "Content-Type" Data.=# ( "application/x-amz-json-1.1" :: Prelude.ByteString ) ] ) instance Data.ToJSON DescribeContext where toJSON DescribeContext' {..} = Data.object ( Prelude.catMaybes [Prelude.Just ("ContextName" Data..= contextName)] ) instance Data.ToPath DescribeContext where toPath = Prelude.const "/" instance Data.ToQuery DescribeContext where toQuery = Prelude.const Prelude.mempty -- | /See:/ 'newDescribeContextResponse' smart constructor. data DescribeContextResponse = DescribeContextResponse' { -- | The Amazon Resource Name (ARN) of the context. contextArn :: Prelude.Maybe Prelude.Text, -- | The name of the context. contextName :: Prelude.Maybe Prelude.Text, -- | The type of the context. contextType :: Prelude.Maybe Prelude.Text, createdBy :: Prelude.Maybe UserContext, -- | When the context was created. creationTime :: Prelude.Maybe Data.POSIX, -- | The description of the context. description :: Prelude.Maybe Prelude.Text, lastModifiedBy :: Prelude.Maybe UserContext, -- | When the context was last modified. lastModifiedTime :: Prelude.Maybe Data.POSIX, -- | The Amazon Resource Name (ARN) of the lineage group. lineageGroupArn :: Prelude.Maybe Prelude.Text, -- | A list of the context\'s properties. properties :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text), -- | The source of the context. source :: Prelude.Maybe ContextSource, -- | The response's http status code. httpStatus :: Prelude.Int } deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic) -- | -- Create a value of 'DescribeContextResponse' with all optional fields omitted. -- -- Use or to modify other optional fields. -- -- The following record fields are available, with the corresponding lenses provided -- for backwards compatibility: -- -- 'contextArn', 'describeContextResponse_contextArn' - The Amazon Resource Name (ARN) of the context. -- -- 'contextName', 'describeContextResponse_contextName' - The name of the context. -- -- 'contextType', 'describeContextResponse_contextType' - The type of the context. -- -- 'createdBy', 'describeContextResponse_createdBy' - Undocumented member. -- -- 'creationTime', 'describeContextResponse_creationTime' - When the context was created. -- -- 'description', 'describeContextResponse_description' - The description of the context. -- -- 'lastModifiedBy', 'describeContextResponse_lastModifiedBy' - Undocumented member. -- -- 'lastModifiedTime', 'describeContextResponse_lastModifiedTime' - When the context was last modified. -- -- 'lineageGroupArn', 'describeContextResponse_lineageGroupArn' - The Amazon Resource Name (ARN) of the lineage group. -- -- 'properties', 'describeContextResponse_properties' - A list of the context\'s properties. -- -- 'source', 'describeContextResponse_source' - The source of the context. -- -- 'httpStatus', 'describeContextResponse_httpStatus' - The response's http status code. newDescribeContextResponse :: -- | 'httpStatus' Prelude.Int -> DescribeContextResponse newDescribeContextResponse pHttpStatus_ = DescribeContextResponse' { contextArn = Prelude.Nothing, contextName = Prelude.Nothing, contextType = Prelude.Nothing, createdBy = Prelude.Nothing, creationTime = Prelude.Nothing, description = Prelude.Nothing, lastModifiedBy = Prelude.Nothing, lastModifiedTime = Prelude.Nothing, lineageGroupArn = Prelude.Nothing, properties = Prelude.Nothing, source = Prelude.Nothing, httpStatus = pHttpStatus_ } -- | The Amazon Resource Name (ARN) of the context. describeContextResponse_contextArn :: Lens.Lens' DescribeContextResponse (Prelude.Maybe Prelude.Text) describeContextResponse_contextArn = Lens.lens (\DescribeContextResponse' {contextArn} -> contextArn) (\s@DescribeContextResponse' {} a -> s {contextArn = a} :: DescribeContextResponse) -- | The name of the context. describeContextResponse_contextName :: Lens.Lens' DescribeContextResponse (Prelude.Maybe Prelude.Text) describeContextResponse_contextName = Lens.lens (\DescribeContextResponse' {contextName} -> contextName) (\s@DescribeContextResponse' {} a -> s {contextName = a} :: DescribeContextResponse) -- | The type of the context. describeContextResponse_contextType :: Lens.Lens' DescribeContextResponse (Prelude.Maybe Prelude.Text) describeContextResponse_contextType = Lens.lens (\DescribeContextResponse' {contextType} -> contextType) (\s@DescribeContextResponse' {} a -> s {contextType = a} :: DescribeContextResponse) -- | Undocumented member. describeContextResponse_createdBy :: Lens.Lens' DescribeContextResponse (Prelude.Maybe UserContext) describeContextResponse_createdBy = Lens.lens (\DescribeContextResponse' {createdBy} -> createdBy) (\s@DescribeContextResponse' {} a -> s {createdBy = a} :: DescribeContextResponse) -- | When the context was created. describeContextResponse_creationTime :: Lens.Lens' DescribeContextResponse (Prelude.Maybe Prelude.UTCTime) describeContextResponse_creationTime = Lens.lens (\DescribeContextResponse' {creationTime} -> creationTime) (\s@DescribeContextResponse' {} a -> s {creationTime = a} :: DescribeContextResponse) Prelude.. Lens.mapping Data._Time -- | The description of the context. describeContextResponse_description :: Lens.Lens' DescribeContextResponse (Prelude.Maybe Prelude.Text) describeContextResponse_description = Lens.lens (\DescribeContextResponse' {description} -> description) (\s@DescribeContextResponse' {} a -> s {description = a} :: DescribeContextResponse) -- | Undocumented member. describeContextResponse_lastModifiedBy :: Lens.Lens' DescribeContextResponse (Prelude.Maybe UserContext) describeContextResponse_lastModifiedBy = Lens.lens (\DescribeContextResponse' {lastModifiedBy} -> lastModifiedBy) (\s@DescribeContextResponse' {} a -> s {lastModifiedBy = a} :: DescribeContextResponse) -- | When the context was last modified. describeContextResponse_lastModifiedTime :: Lens.Lens' DescribeContextResponse (Prelude.Maybe Prelude.UTCTime) describeContextResponse_lastModifiedTime = Lens.lens (\DescribeContextResponse' {lastModifiedTime} -> lastModifiedTime) (\s@DescribeContextResponse' {} a -> s {lastModifiedTime = a} :: DescribeContextResponse) Prelude.. Lens.mapping Data._Time -- | The Amazon Resource Name (ARN) of the lineage group. describeContextResponse_lineageGroupArn :: Lens.Lens' DescribeContextResponse (Prelude.Maybe Prelude.Text) describeContextResponse_lineageGroupArn = Lens.lens (\DescribeContextResponse' {lineageGroupArn} -> lineageGroupArn) (\s@DescribeContextResponse' {} a -> s {lineageGroupArn = a} :: DescribeContextResponse) -- | A list of the context\'s properties. describeContextResponse_properties :: Lens.Lens' DescribeContextResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text)) describeContextResponse_properties = Lens.lens (\DescribeContextResponse' {properties} -> properties) (\s@DescribeContextResponse' {} a -> s {properties = a} :: DescribeContextResponse) Prelude.. Lens.mapping Lens.coerced -- | The source of the context. describeContextResponse_source :: Lens.Lens' DescribeContextResponse (Prelude.Maybe ContextSource) describeContextResponse_source = Lens.lens (\DescribeContextResponse' {source} -> source) (\s@DescribeContextResponse' {} a -> s {source = a} :: DescribeContextResponse) -- | The response's http status code. describeContextResponse_httpStatus :: Lens.Lens' DescribeContextResponse Prelude.Int describeContextResponse_httpStatus = Lens.lens (\DescribeContextResponse' {httpStatus} -> httpStatus) (\s@DescribeContextResponse' {} a -> s {httpStatus = a} :: DescribeContextResponse) instance Prelude.NFData DescribeContextResponse where rnf DescribeContextResponse' {..} = Prelude.rnf contextArn `Prelude.seq` Prelude.rnf contextName `Prelude.seq` Prelude.rnf contextType `Prelude.seq` Prelude.rnf createdBy `Prelude.seq` Prelude.rnf creationTime `Prelude.seq` Prelude.rnf description `Prelude.seq` Prelude.rnf lastModifiedBy `Prelude.seq` Prelude.rnf lastModifiedTime `Prelude.seq` Prelude.rnf lineageGroupArn `Prelude.seq` Prelude.rnf properties `Prelude.seq` Prelude.rnf source `Prelude.seq` Prelude.rnf httpStatus