# Generated by `mix github.gen` from docs/github-api/api.github.com.json. # Do not edit by hand; re-run the task instead. defmodule Noizu.Github.WebhookDeploymentProtectionRuleRequested do @moduledoc false defstruct [ :action, :deployment, :deployment_callback_url, :environment, :event, :installation, :organization, :pull_requests, :ref, :repository, :sender, :sha ] def from_json(json, headers \\ []) def from_json(nil, _headers), do: nil def from_json(list, headers) when is_list(list) do Enum.map(list, &from_json(&1, headers)) end def from_json(json, _headers) when is_map(json) do %__MODULE__{ action: Map.get(json, :action), deployment: Noizu.Github.NullableDeployment.from_json(Map.get(json, :deployment)), deployment_callback_url: Map.get(json, :deployment_callback_url), environment: Map.get(json, :environment), event: Map.get(json, :event), installation: Noizu.Github.SimpleInstallation.from_json(Map.get(json, :installation)), organization: Noizu.Github.OrganizationSimpleWebhooks.from_json(Map.get(json, :organization)), pull_requests: Enum.map(Map.get(json, :pull_requests) || [], &Noizu.Github.PullRequest.from_json(&1)), ref: Map.get(json, :ref), repository: Noizu.Github.RepositoryWebhooks.from_json(Map.get(json, :repository)), sender: Noizu.Github.SimpleUser.from_json(Map.get(json, :sender)), sha: Map.get(json, :sha) } end def from_json(other, _headers), do: other end