/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace VPCLattice { namespace Model { /** *

Describes the conditions that can be applied when matching a path for * incoming requests.

See Also:

AWS * API Reference

*/ class PathMatch { public: AWS_VPCLATTICE_API PathMatch(); AWS_VPCLATTICE_API PathMatch(Aws::Utils::Json::JsonView jsonValue); AWS_VPCLATTICE_API PathMatch& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_VPCLATTICE_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

Indicates whether the match is case sensitive. Defaults to false.

*/ inline bool GetCaseSensitive() const{ return m_caseSensitive; } /** *

Indicates whether the match is case sensitive. Defaults to false.

*/ inline bool CaseSensitiveHasBeenSet() const { return m_caseSensitiveHasBeenSet; } /** *

Indicates whether the match is case sensitive. Defaults to false.

*/ inline void SetCaseSensitive(bool value) { m_caseSensitiveHasBeenSet = true; m_caseSensitive = value; } /** *

Indicates whether the match is case sensitive. Defaults to false.

*/ inline PathMatch& WithCaseSensitive(bool value) { SetCaseSensitive(value); return *this;} /** *

The type of path match.

*/ inline const PathMatchType& GetMatch() const{ return m_match; } /** *

The type of path match.

*/ inline bool MatchHasBeenSet() const { return m_matchHasBeenSet; } /** *

The type of path match.

*/ inline void SetMatch(const PathMatchType& value) { m_matchHasBeenSet = true; m_match = value; } /** *

The type of path match.

*/ inline void SetMatch(PathMatchType&& value) { m_matchHasBeenSet = true; m_match = std::move(value); } /** *

The type of path match.

*/ inline PathMatch& WithMatch(const PathMatchType& value) { SetMatch(value); return *this;} /** *

The type of path match.

*/ inline PathMatch& WithMatch(PathMatchType&& value) { SetMatch(std::move(value)); return *this;} private: bool m_caseSensitive; bool m_caseSensitiveHasBeenSet = false; PathMatchType m_match; bool m_matchHasBeenSet = false; }; } // namespace Model } // namespace VPCLattice } // namespace Aws