/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Provides information about a session.See Also:
AWS
* API Reference
The duration of the session, in milliseconds.
*/ inline int GetDuration() const{ return m_duration; } /** *The duration of the session, in milliseconds.
*/ inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; } /** *The duration of the session, in milliseconds.
*/ inline void SetDuration(int value) { m_durationHasBeenSet = true; m_duration = value; } /** *The duration of the session, in milliseconds.
*/ inline Session& WithDuration(int value) { SetDuration(value); return *this;} /** *The unique identifier for the session.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The unique identifier for the session.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The unique identifier for the session.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The unique identifier for the session.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The unique identifier for the session.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The unique identifier for the session.
*/ inline Session& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The unique identifier for the session.
*/ inline Session& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The unique identifier for the session.
*/ inline Session& WithId(const char* value) { SetId(value); return *this;} /** *The date and time when the session began.
*/ inline const Aws::String& GetStartTimestamp() const{ return m_startTimestamp; } /** *The date and time when the session began.
*/ inline bool StartTimestampHasBeenSet() const { return m_startTimestampHasBeenSet; } /** *The date and time when the session began.
*/ inline void SetStartTimestamp(const Aws::String& value) { m_startTimestampHasBeenSet = true; m_startTimestamp = value; } /** *The date and time when the session began.
*/ inline void SetStartTimestamp(Aws::String&& value) { m_startTimestampHasBeenSet = true; m_startTimestamp = std::move(value); } /** *The date and time when the session began.
*/ inline void SetStartTimestamp(const char* value) { m_startTimestampHasBeenSet = true; m_startTimestamp.assign(value); } /** *The date and time when the session began.
*/ inline Session& WithStartTimestamp(const Aws::String& value) { SetStartTimestamp(value); return *this;} /** *The date and time when the session began.
*/ inline Session& WithStartTimestamp(Aws::String&& value) { SetStartTimestamp(std::move(value)); return *this;} /** *The date and time when the session began.
*/ inline Session& WithStartTimestamp(const char* value) { SetStartTimestamp(value); return *this;} /** *The date and time when the session ended.
*/ inline const Aws::String& GetStopTimestamp() const{ return m_stopTimestamp; } /** *The date and time when the session ended.
*/ inline bool StopTimestampHasBeenSet() const { return m_stopTimestampHasBeenSet; } /** *The date and time when the session ended.
*/ inline void SetStopTimestamp(const Aws::String& value) { m_stopTimestampHasBeenSet = true; m_stopTimestamp = value; } /** *The date and time when the session ended.
*/ inline void SetStopTimestamp(Aws::String&& value) { m_stopTimestampHasBeenSet = true; m_stopTimestamp = std::move(value); } /** *The date and time when the session ended.
*/ inline void SetStopTimestamp(const char* value) { m_stopTimestampHasBeenSet = true; m_stopTimestamp.assign(value); } /** *The date and time when the session ended.
*/ inline Session& WithStopTimestamp(const Aws::String& value) { SetStopTimestamp(value); return *this;} /** *The date and time when the session ended.
*/ inline Session& WithStopTimestamp(Aws::String&& value) { SetStopTimestamp(std::move(value)); return *this;} /** *The date and time when the session ended.
*/ inline Session& WithStopTimestamp(const char* value) { SetStopTimestamp(value); return *this;} private: int m_duration; bool m_durationHasBeenSet = false; Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_startTimestamp; bool m_startTimestampHasBeenSet = false; Aws::String m_stopTimestamp; bool m_stopTimestampHasBeenSet = false; }; } // namespace Model } // namespace Pinpoint } // namespace Aws