Class: MicrosoftGraph::Communications::CallRecords::Item::Sessions::SessionsRequestBuilder

Inherits:
MicrosoftKiotaAbstractions::BaseRequestBuilder
  • Object
show all
Defined in:
lib/communications/call_records/item/sessions/sessions_request_builder.rb

Overview

Provides operations to manage the sessions property of the microsoft.graph.callRecords.callRecord entity.

Defined Under Namespace

Classes: SessionsRequestBuilderGetQueryParameters

Instance Method Summary collapse

Constructor Details

#initialize(path_parameters, request_adapter) ⇒ Object

Instantiates a new SessionsRequestBuilder and sets the default values.



44
45
46
# File 'lib/communications/call_records/item/sessions/sessions_request_builder.rb', line 44

def initialize(path_parameters, request_adapter)
    super(path_parameters, request_adapter, "{+baseurl}/communications/callRecords/{callRecord%2Did}/sessions{?%24top,%24skip,%24search,%24filter,%24count,%24orderby,%24select,%24expand}")
end

Instance Method Details

#by_session_id(session_id) ⇒ Object

Provides operations to manage the sessions property of the microsoft.graph.callRecords.callRecord entity.

Raises:

  • (StandardError)


32
33
34
35
36
37
# File 'lib/communications/call_records/item/sessions/sessions_request_builder.rb', line 32

def by_session_id(session_id)
    raise StandardError, 'session_id cannot be null' if session_id.nil?
    url_tpl_params = @path_parameters.clone
    url_tpl_params["session%2Did"] = session_id
    return MicrosoftGraph::Communications::CallRecords::Item::Sessions::Item::SessionItemRequestBuilder.new(url_tpl_params, @request_adapter)
end

#countObject

Provides operations to count the resources in the collection.



24
25
26
# File 'lib/communications/call_records/item/sessions/sessions_request_builder.rb', line 24

def count()
    return MicrosoftGraph::Communications::CallRecords::Item::Sessions::Count::CountRequestBuilder.new(@path_parameters, @request_adapter)
end

#get(request_configuration = nil) ⇒ Object

Retrieve the list of sessions associated with a callRecord object. If the sessions list is truncated, a [email protected] value will be provided to retrieve the next page of sessions. The maximum page size for sessions is 60 entries.



52
53
54
55
56
57
58
59
60
# File 'lib/communications/call_records/item/sessions/sessions_request_builder.rb', line 52

def get(request_configuration=nil)
    request_info = self.to_get_request_information(
        request_configuration
    )
    error_mapping = Hash.new
    error_mapping["4XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrorsODataError.create_from_discriminator_value(pn) }
    error_mapping["5XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrorsODataError.create_from_discriminator_value(pn) }
    return @request_adapter.send_async(request_info, lambda {|pn| MicrosoftGraph::Models::CallRecordsSessionCollectionResponse.create_from_discriminator_value(pn) }, error_mapping)
end

#post(body, request_configuration = nil) ⇒ Object

Create new navigation property to sessions for communications

Raises:

  • (StandardError)


67
68
69
70
71
72
73
74
75
76
# File 'lib/communications/call_records/item/sessions/sessions_request_builder.rb', line 67

def post(body, request_configuration=nil)
    raise StandardError, 'body cannot be null' if body.nil?
    request_info = self.to_post_request_information(
        body, request_configuration
    )
    error_mapping = Hash.new
    error_mapping["4XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrorsODataError.create_from_discriminator_value(pn) }
    error_mapping["5XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrorsODataError.create_from_discriminator_value(pn) }
    return @request_adapter.send_async(request_info, lambda {|pn| MicrosoftGraph::Models::CallRecordsSession.create_from_discriminator_value(pn) }, error_mapping)
end

#to_get_request_information(request_configuration = nil) ⇒ Object

Retrieve the list of sessions associated with a callRecord object. If the sessions list is truncated, a [email protected] value will be provided to retrieve the next page of sessions. The maximum page size for sessions is 60 entries.



82
83
84
85
86
87
88
89
90
91
92
93
94
# File 'lib/communications/call_records/item/sessions/sessions_request_builder.rb', line 82

def to_get_request_information(request_configuration=nil)
    request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
    request_info.url_template = @url_template
    request_info.path_parameters = @path_parameters
    request_info.http_method = :GET
    request_info.headers.add('Accept', 'application/json')
    unless request_configuration.nil?
        request_info.add_headers_from_raw_object(request_configuration.headers)
        request_info.set_query_string_parameters_from_raw_object(request_configuration.query_parameters)
        request_info.add_request_options(request_configuration.options)
    end
    return request_info
end

#to_post_request_information(body, request_configuration = nil) ⇒ Object

Create new navigation property to sessions for communications

Raises:

  • (StandardError)


101
102
103
104
105
106
107
108
109
110
111
112
113
114
# File 'lib/communications/call_records/item/sessions/sessions_request_builder.rb', line 101

def to_post_request_information(body, request_configuration=nil)
    raise StandardError, 'body cannot be null' if body.nil?
    request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
    request_info.url_template = @url_template
    request_info.path_parameters = @path_parameters
    request_info.http_method = :POST
    request_info.headers.add('Accept', 'application/json')
    unless request_configuration.nil?
        request_info.add_headers_from_raw_object(request_configuration.headers)
        request_info.add_request_options(request_configuration.options)
    end
    request_info.set_content_from_parsable(@request_adapter, "application/json", body)
    return request_info
end