Class: MicrosoftGraph::Subscriptions::SubscriptionsRequestBuilder

Inherits:
MicrosoftKiotaAbstractions::BaseRequestBuilder
  • Object
show all
Defined in:
lib/subscriptions/subscriptions_request_builder.rb

Overview

Provides operations to manage the collection of subscription entities.

Defined Under Namespace

Classes: SubscriptionsRequestBuilderGetQueryParameters

Instance Method Summary collapse

Constructor Details

#initialize(path_parameters, request_adapter) ⇒ Object

Instantiates a new SubscriptionsRequestBuilder and sets the default values.

Parameters:

  • path_parameters

    Path parameters for the request

  • request_adapter

    The request adapter to use to execute the requests.



20
21
22
# File 'lib/subscriptions/subscriptions_request_builder.rb', line 20

def initialize(path_parameters, request_adapter)
    super(path_parameters, request_adapter, "{+baseurl}/subscriptions{?%24search,%24select}")
end

Instance Method Details

#get(request_configuration = nil) ⇒ Object

Retrieve the properties and relationships of webhook subscriptions, based on the app ID, the user, and the user’s role with a tenant. The content of the response depends on the context in which the app is calling; for details, see the scenarios in the Permissions section.

Parameters:

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a Fiber of subscription_collection_response



28
29
30
31
32
33
34
35
36
# File 'lib/subscriptions/subscriptions_request_builder.rb', line 28

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::ODataErrors::ODataError.create_from_discriminator_value(pn) }
    error_mapping["5XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrors::ODataError.create_from_discriminator_value(pn) }
    return @request_adapter.send_async(request_info, lambda {|pn| MicrosoftGraph::Models::SubscriptionCollectionResponse.create_from_discriminator_value(pn) }, error_mapping)
end

#post(body, request_configuration = nil) ⇒ Object

Subscribes a listener application to receive change notifications when the requested type of changes occur to the specified resource in Microsoft Graph. See the table in the Permissions section for the list of resources that support subscribing to change notifications. Some resources support the option to include encrypted resource data in change notifications. These resources include chatMessage, contact, event, message, and presence. For more information, see Set up change notifications that include resource data and Change notifications for Outlook resources in Microsoft Graph.

Parameters:

  • body

    The request body

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a Fiber of subscription

Raises:

  • (StandardError)


43
44
45
46
47
48
49
50
51
52
# File 'lib/subscriptions/subscriptions_request_builder.rb', line 43

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::ODataErrors::ODataError.create_from_discriminator_value(pn) }
    error_mapping["5XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrors::ODataError.create_from_discriminator_value(pn) }
    return @request_adapter.send_async(request_info, lambda {|pn| MicrosoftGraph::Models::Subscription.create_from_discriminator_value(pn) }, error_mapping)
end

#to_get_request_information(request_configuration = nil) ⇒ Object

Retrieve the properties and relationships of webhook subscriptions, based on the app ID, the user, and the user’s role with a tenant. The content of the response depends on the context in which the app is calling; for details, see the scenarios in the Permissions section.

Parameters:

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a request_information



58
59
60
61
62
63
64
65
66
67
68
69
70
# File 'lib/subscriptions/subscriptions_request_builder.rb', line 58

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

Subscribes a listener application to receive change notifications when the requested type of changes occur to the specified resource in Microsoft Graph. See the table in the Permissions section for the list of resources that support subscribing to change notifications. Some resources support the option to include encrypted resource data in change notifications. These resources include chatMessage, contact, event, message, and presence. For more information, see Set up change notifications that include resource data and Change notifications for Outlook resources in Microsoft Graph.

Parameters:

  • body

    The request body

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a request_information

Raises:

  • (StandardError)


77
78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/subscriptions/subscriptions_request_builder.rb', line 77

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(self.request_adapter, "application/json", body)
    return request_info
end