text:
require 'date'
require 'google/apis/core/base_service'
require 'google/apis/core/json_representation'
require 'google/apis/core/hashable'
require 'google/apis/errors'

module Google
  module Apis
    module ServiceconsumermanagementV1beta1

      class Api
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class AuthProvider
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class AuthRequirement
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Authentication
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class AuthenticationRule
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Backend
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class BackendRule
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Billing
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class BillingDestination
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Context
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class ContextRule
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Control
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class CustomError
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class CustomErrorRule
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class CustomHttpPattern
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Documentation
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class DocumentationRule
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Empty
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Endpoint
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Enum
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class EnumValue
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Field
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Http
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class HttpRule
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class JwtLocation
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class LabelDescriptor
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class LogDescriptor
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Logging
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class LoggingDestination
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class MethodProp
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class MetricDescriptor
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class MetricDescriptorMetadata
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class MetricRule
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Mixin
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class MonitoredResourceDescriptor
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Monitoring
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class MonitoringDestination
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class OAuthRequirements
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Operation
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Option
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Page
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Quota
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class QuotaLimit
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Service
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class SourceContext
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class SourceInfo
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Status
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class SystemParameter
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class SystemParameterRule
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class SystemParameters
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Type
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Usage
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class UsageRule
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1BatchCreateProducerOverridesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1ConsumerQuotaLimit
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1ConsumerQuotaMetric
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1DisableConsumerResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1EnableConsumerResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1GenerateServiceIdentityResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1ImportProducerOverridesRequest
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1ImportProducerOverridesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1ImportProducerQuotaPoliciesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1ListConsumerQuotaMetricsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1ListProducerOverridesResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1OverrideInlineSource
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1ProducerQuotaPolicy
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1QuotaBucket
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1QuotaOverride
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1RefreshConsumerResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1Beta1ServiceIdentity
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1beta1AddVisibilityLabelsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1beta1DefaultIdentity
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1beta1DisableConsumerResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1beta1EnableConsumerResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1beta1GenerateDefaultIdentityResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1beta1GenerateServiceAccountResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1beta1RefreshConsumerResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1beta1RemoveVisibilityLabelsResponse
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class V1beta1ServiceAccount
        class Representation < Google::Apis::Core::JsonRepresentation; end

        include Google::Apis::Core::JsonObjectSupport
      end

      class Api
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :methods_prop, as: 'methods', class: Google::Apis::ServiceconsumermanagementV1beta1::MethodProp, decorator: Google::Apis::ServiceconsumermanagementV1beta1::MethodProp::Representation

          collection :mixins, as: 'mixins', class: Google::Apis::ServiceconsumermanagementV1beta1::Mixin, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Mixin::Representation

          property :name, as: 'name'
          collection :options, as: 'options', class: Google::Apis::ServiceconsumermanagementV1beta1::Option, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Option::Representation

          property :source_context, as: 'sourceContext', class: Google::Apis::ServiceconsumermanagementV1beta1::SourceContext, decorator: Google::Apis::ServiceconsumermanagementV1beta1::SourceContext::Representation

          property :syntax, as: 'syntax'
          property :version, as: 'version'
        end
      end

      class AuthProvider
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :audiences, as: 'audiences'
          property :authorization_url, as: 'authorizationUrl'
          property :id, as: 'id'
          property :issuer, as: 'issuer'
          property :jwks_uri, as: 'jwksUri'
          collection :jwt_locations, as: 'jwtLocations', class: Google::Apis::ServiceconsumermanagementV1beta1::JwtLocation, decorator: Google::Apis::ServiceconsumermanagementV1beta1::JwtLocation::Representation

        end
      end

      class AuthRequirement
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :audiences, as: 'audiences'
          property :provider_id, as: 'providerId'
        end
      end

      class Authentication
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :providers, as: 'providers', class: Google::Apis::ServiceconsumermanagementV1beta1::AuthProvider, decorator: Google::Apis::ServiceconsumermanagementV1beta1::AuthProvider::Representation

          collection :rules, as: 'rules', class: Google::Apis::ServiceconsumermanagementV1beta1::AuthenticationRule, decorator: Google::Apis::ServiceconsumermanagementV1beta1::AuthenticationRule::Representation

        end
      end

      class AuthenticationRule
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :allow_without_credential, as: 'allowWithoutCredential'
          property :oauth, as: 'oauth', class: Google::Apis::ServiceconsumermanagementV1beta1::OAuthRequirements, decorator: Google::Apis::ServiceconsumermanagementV1beta1::OAuthRequirements::Representation

          collection :requirements, as: 'requirements', class: Google::Apis::ServiceconsumermanagementV1beta1::AuthRequirement, decorator: Google::Apis::ServiceconsumermanagementV1beta1::AuthRequirement::Representation

          property :selector, as: 'selector'
        end
      end

      class Backend
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :rules, as: 'rules', class: Google::Apis::ServiceconsumermanagementV1beta1::BackendRule, decorator: Google::Apis::ServiceconsumermanagementV1beta1::BackendRule::Representation

        end
      end

      class BackendRule
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :address, as: 'address'
          property :deadline, as: 'deadline'
          property :disable_auth, as: 'disableAuth'
          property :jwt_audience, as: 'jwtAudience'
          property :min_deadline, as: 'minDeadline'
          property :operation_deadline, as: 'operationDeadline'
          property :path_translation, as: 'pathTranslation'
          property :protocol, as: 'protocol'
          property :selector, as: 'selector'
        end
      end

      class Billing
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :consumer_destinations, as: 'consumerDestinations', class: Google::Apis::ServiceconsumermanagementV1beta1::BillingDestination, decorator: Google::Apis::ServiceconsumermanagementV1beta1::BillingDestination::Representation

        end
      end

      class BillingDestination
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :metrics, as: 'metrics'
          property :monitored_resource, as: 'monitoredResource'
        end
      end

      class Context
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :rules, as: 'rules', class: Google::Apis::ServiceconsumermanagementV1beta1::ContextRule, decorator: Google::Apis::ServiceconsumermanagementV1beta1::ContextRule::Representation

        end
      end

      class ContextRule
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :allowed_request_extensions, as: 'allowedRequestExtensions'
          collection :allowed_response_extensions, as: 'allowedResponseExtensions'
          collection :provided, as: 'provided'
          collection :requested, as: 'requested'
          property :selector, as: 'selector'
        end
      end

      class Control
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :environment, as: 'environment'
        end
      end

      class CustomError
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :rules, as: 'rules', class: Google::Apis::ServiceconsumermanagementV1beta1::CustomErrorRule, decorator: Google::Apis::ServiceconsumermanagementV1beta1::CustomErrorRule::Representation

          collection :types, as: 'types'
        end
      end

      class CustomErrorRule
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :is_error_type, as: 'isErrorType'
          property :selector, as: 'selector'
        end
      end

      class CustomHttpPattern
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :kind, as: 'kind'
          property :path, as: 'path'
        end
      end

      class Documentation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :documentation_root_url, as: 'documentationRootUrl'
          property :overview, as: 'overview'
          collection :pages, as: 'pages', class: Google::Apis::ServiceconsumermanagementV1beta1::Page, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Page::Representation

          collection :rules, as: 'rules', class: Google::Apis::ServiceconsumermanagementV1beta1::DocumentationRule, decorator: Google::Apis::ServiceconsumermanagementV1beta1::DocumentationRule::Representation

          property :service_root_url, as: 'serviceRootUrl'
          property :summary, as: 'summary'
        end
      end

      class DocumentationRule
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :deprecation_description, as: 'deprecationDescription'
          property :description, as: 'description'
          property :selector, as: 'selector'
        end
      end

      class Empty
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end

      class Endpoint
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :aliases, as: 'aliases'
          property :allow_cors, as: 'allowCors'
          property :name, as: 'name'
          property :target, as: 'target'
        end
      end

      class Enum
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :enumvalue, as: 'enumvalue', class: Google::Apis::ServiceconsumermanagementV1beta1::EnumValue, decorator: Google::Apis::ServiceconsumermanagementV1beta1::EnumValue::Representation

          property :name, as: 'name'
          collection :options, as: 'options', class: Google::Apis::ServiceconsumermanagementV1beta1::Option, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Option::Representation

          property :source_context, as: 'sourceContext', class: Google::Apis::ServiceconsumermanagementV1beta1::SourceContext, decorator: Google::Apis::ServiceconsumermanagementV1beta1::SourceContext::Representation

          property :syntax, as: 'syntax'
        end
      end

      class EnumValue
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
          property :number, as: 'number'
          collection :options, as: 'options', class: Google::Apis::ServiceconsumermanagementV1beta1::Option, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Option::Representation

        end
      end

      class Field
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :cardinality, as: 'cardinality'
          property :default_value, as: 'defaultValue'
          property :json_name, as: 'jsonName'
          property :kind, as: 'kind'
          property :name, as: 'name'
          property :number, as: 'number'
          property :oneof_index, as: 'oneofIndex'
          collection :options, as: 'options', class: Google::Apis::ServiceconsumermanagementV1beta1::Option, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Option::Representation

          property :packed, as: 'packed'
          property :type_url, as: 'typeUrl'
        end
      end

      class Http
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :fully_decode_reserved_expansion, as: 'fullyDecodeReservedExpansion'
          collection :rules, as: 'rules', class: Google::Apis::ServiceconsumermanagementV1beta1::HttpRule, decorator: Google::Apis::ServiceconsumermanagementV1beta1::HttpRule::Representation

        end
      end

      class HttpRule
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :additional_bindings, as: 'additionalBindings', class: Google::Apis::ServiceconsumermanagementV1beta1::HttpRule, decorator: Google::Apis::ServiceconsumermanagementV1beta1::HttpRule::Representation

          property :body, as: 'body'
          property :custom, as: 'custom', class: Google::Apis::ServiceconsumermanagementV1beta1::CustomHttpPattern, decorator: Google::Apis::ServiceconsumermanagementV1beta1::CustomHttpPattern::Representation

          property :delete, as: 'delete'
          property :get, as: 'get'
          property :patch, as: 'patch'
          property :post, as: 'post'
          property :put, as: 'put'
          property :response_body, as: 'responseBody'
          property :selector, as: 'selector'
        end
      end

      class JwtLocation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :header, as: 'header'
          property :query, as: 'query'
          property :value_prefix, as: 'valuePrefix'
        end
      end

      class LabelDescriptor
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :key, as: 'key'
          property :value_type, as: 'valueType'
        end
      end

      class LogDescriptor
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          collection :labels, as: 'labels', class: Google::Apis::ServiceconsumermanagementV1beta1::LabelDescriptor, decorator: Google::Apis::ServiceconsumermanagementV1beta1::LabelDescriptor::Representation

          property :name, as: 'name'
        end
      end

      class Logging
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :consumer_destinations, as: 'consumerDestinations', class: Google::Apis::ServiceconsumermanagementV1beta1::LoggingDestination, decorator: Google::Apis::ServiceconsumermanagementV1beta1::LoggingDestination::Representation

          collection :producer_destinations, as: 'producerDestinations', class: Google::Apis::ServiceconsumermanagementV1beta1::LoggingDestination, decorator: Google::Apis::ServiceconsumermanagementV1beta1::LoggingDestination::Representation

        end
      end

      class LoggingDestination
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :logs, as: 'logs'
          property :monitored_resource, as: 'monitoredResource'
        end
      end

      class MethodProp
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
          collection :options, as: 'options', class: Google::Apis::ServiceconsumermanagementV1beta1::Option, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Option::Representation

          property :request_streaming, as: 'requestStreaming'
          property :request_type_url, as: 'requestTypeUrl'
          property :response_streaming, as: 'responseStreaming'
          property :response_type_url, as: 'responseTypeUrl'
          property :syntax, as: 'syntax'
        end
      end

      class MetricDescriptor
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          collection :labels, as: 'labels', class: Google::Apis::ServiceconsumermanagementV1beta1::LabelDescriptor, decorator: Google::Apis::ServiceconsumermanagementV1beta1::LabelDescriptor::Representation

          property :launch_stage, as: 'launchStage'
          property :metadata, as: 'metadata', class: Google::Apis::ServiceconsumermanagementV1beta1::MetricDescriptorMetadata, decorator: Google::Apis::ServiceconsumermanagementV1beta1::MetricDescriptorMetadata::Representation

          property :metric_kind, as: 'metricKind'
          collection :monitored_resource_types, as: 'monitoredResourceTypes'
          property :name, as: 'name'
          property :type, as: 'type'
          property :unit, as: 'unit'
          property :value_type, as: 'valueType'
        end
      end

      class MetricDescriptorMetadata
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :ingest_delay, as: 'ingestDelay'
          property :launch_stage, as: 'launchStage'
          property :sample_period, as: 'samplePeriod'
        end
      end

      class MetricRule
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          hash :metric_costs, as: 'metricCosts'
          property :selector, as: 'selector'
        end
      end

      class Mixin
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
          property :root, as: 'root'
        end
      end

      class MonitoredResourceDescriptor
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          collection :labels, as: 'labels', class: Google::Apis::ServiceconsumermanagementV1beta1::LabelDescriptor, decorator: Google::Apis::ServiceconsumermanagementV1beta1::LabelDescriptor::Representation

          property :launch_stage, as: 'launchStage'
          property :name, as: 'name'
          property :type, as: 'type'
        end
      end

      class Monitoring
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :consumer_destinations, as: 'consumerDestinations', class: Google::Apis::ServiceconsumermanagementV1beta1::MonitoringDestination, decorator: Google::Apis::ServiceconsumermanagementV1beta1::MonitoringDestination::Representation

          collection :producer_destinations, as: 'producerDestinations', class: Google::Apis::ServiceconsumermanagementV1beta1::MonitoringDestination, decorator: Google::Apis::ServiceconsumermanagementV1beta1::MonitoringDestination::Representation

        end
      end

      class MonitoringDestination
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :metrics, as: 'metrics'
          property :monitored_resource, as: 'monitoredResource'
        end
      end

      class OAuthRequirements
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :canonical_scopes, as: 'canonicalScopes'
        end
      end

      class Operation
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :done, as: 'done'
          property :error, as: 'error', class: Google::Apis::ServiceconsumermanagementV1beta1::Status, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Status::Representation

          hash :metadata, as: 'metadata'
          property :name, as: 'name'
          hash :response, as: 'response'
        end
      end

      class Option
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :name, as: 'name'
          hash :value, as: 'value'
        end
      end

      class Page
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :content, as: 'content'
          property :name, as: 'name'
          collection :subpages, as: 'subpages', class: Google::Apis::ServiceconsumermanagementV1beta1::Page, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Page::Representation

        end
      end

      class Quota
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :limits, as: 'limits', class: Google::Apis::ServiceconsumermanagementV1beta1::QuotaLimit, decorator: Google::Apis::ServiceconsumermanagementV1beta1::QuotaLimit::Representation

          collection :metric_rules, as: 'metricRules', class: Google::Apis::ServiceconsumermanagementV1beta1::MetricRule, decorator: Google::Apis::ServiceconsumermanagementV1beta1::MetricRule::Representation

        end
      end

      class QuotaLimit
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :default_limit, :numeric_string => true, as: 'defaultLimit'
          property :description, as: 'description'
          property :display_name, as: 'displayName'
          property :duration, as: 'duration'
          property :free_tier, :numeric_string => true, as: 'freeTier'
          property :max_limit, :numeric_string => true, as: 'maxLimit'
          property :metric, as: 'metric'
          property :name, as: 'name'
          property :unit, as: 'unit'
          hash :values, as: 'values'
        end
      end

      class Service
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :apis, as: 'apis', class: Google::Apis::ServiceconsumermanagementV1beta1::Api, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Api::Representation

          property :authentication, as: 'authentication', class: Google::Apis::ServiceconsumermanagementV1beta1::Authentication, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Authentication::Representation

          property :backend, as: 'backend', class: Google::Apis::ServiceconsumermanagementV1beta1::Backend, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Backend::Representation

          property :billing, as: 'billing', class: Google::Apis::ServiceconsumermanagementV1beta1::Billing, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Billing::Representation

          property :config_version, as: 'configVersion'
          property :context, as: 'context', class: Google::Apis::ServiceconsumermanagementV1beta1::Context, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Context::Representation

          property :control, as: 'control', class: Google::Apis::ServiceconsumermanagementV1beta1::Control, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Control::Representation

          property :custom_error, as: 'customError', class: Google::Apis::ServiceconsumermanagementV1beta1::CustomError, decorator: Google::Apis::ServiceconsumermanagementV1beta1::CustomError::Representation

          property :documentation, as: 'documentation', class: Google::Apis::ServiceconsumermanagementV1beta1::Documentation, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Documentation::Representation

          collection :endpoints, as: 'endpoints', class: Google::Apis::ServiceconsumermanagementV1beta1::Endpoint, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Endpoint::Representation

          collection :enums, as: 'enums', class: Google::Apis::ServiceconsumermanagementV1beta1::Enum, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Enum::Representation

          property :http, as: 'http', class: Google::Apis::ServiceconsumermanagementV1beta1::Http, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Http::Representation

          property :id, as: 'id'
          property :logging, as: 'logging', class: Google::Apis::ServiceconsumermanagementV1beta1::Logging, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Logging::Representation

          collection :logs, as: 'logs', class: Google::Apis::ServiceconsumermanagementV1beta1::LogDescriptor, decorator: Google::Apis::ServiceconsumermanagementV1beta1::LogDescriptor::Representation

          collection :metrics, as: 'metrics', class: Google::Apis::ServiceconsumermanagementV1beta1::MetricDescriptor, decorator: Google::Apis::ServiceconsumermanagementV1beta1::MetricDescriptor::Representation

          collection :monitored_resources, as: 'monitoredResources', class: Google::Apis::ServiceconsumermanagementV1beta1::MonitoredResourceDescriptor, decorator: Google::Apis::ServiceconsumermanagementV1beta1::MonitoredResourceDescriptor::Representation

          property :monitoring, as: 'monitoring', class: Google::Apis::ServiceconsumermanagementV1beta1::Monitoring, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Monitoring::Representation

          property :name, as: 'name'
          property :producer_project_id, as: 'producerProjectId'
          property :quota, as: 'quota', class: Google::Apis::ServiceconsumermanagementV1beta1::Quota, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Quota::Representation

          property :source_info, as: 'sourceInfo', class: Google::Apis::ServiceconsumermanagementV1beta1::SourceInfo, decorator: Google::Apis::ServiceconsumermanagementV1beta1::SourceInfo::Representation

          property :system_parameters, as: 'systemParameters', class: Google::Apis::ServiceconsumermanagementV1beta1::SystemParameters, decorator: Google::Apis::ServiceconsumermanagementV1beta1::SystemParameters::Representation

          collection :system_types, as: 'systemTypes', class: Google::Apis::ServiceconsumermanagementV1beta1::Type, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Type::Representation

          property :title, as: 'title'
          collection :types, as: 'types', class: Google::Apis::ServiceconsumermanagementV1beta1::Type, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Type::Representation

          property :usage, as: 'usage', class: Google::Apis::ServiceconsumermanagementV1beta1::Usage, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Usage::Representation

        end
      end

      class SourceContext
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :file_name, as: 'fileName'
        end
      end

      class SourceInfo
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :source_files, as: 'sourceFiles'
        end
      end

      class Status
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :code, as: 'code'
          collection :details, as: 'details'
          property :message, as: 'message'
        end
      end

      class SystemParameter
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :http_header, as: 'httpHeader'
          property :name, as: 'name'
          property :url_query_parameter, as: 'urlQueryParameter'
        end
      end

      class SystemParameterRule
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :parameters, as: 'parameters', class: Google::Apis::ServiceconsumermanagementV1beta1::SystemParameter, decorator: Google::Apis::ServiceconsumermanagementV1beta1::SystemParameter::Representation

          property :selector, as: 'selector'
        end
      end

      class SystemParameters
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :rules, as: 'rules', class: Google::Apis::ServiceconsumermanagementV1beta1::SystemParameterRule, decorator: Google::Apis::ServiceconsumermanagementV1beta1::SystemParameterRule::Representation

        end
      end

      class Type
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :fields, as: 'fields', class: Google::Apis::ServiceconsumermanagementV1beta1::Field, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Field::Representation

          property :name, as: 'name'
          collection :oneofs, as: 'oneofs'
          collection :options, as: 'options', class: Google::Apis::ServiceconsumermanagementV1beta1::Option, decorator: Google::Apis::ServiceconsumermanagementV1beta1::Option::Representation

          property :source_context, as: 'sourceContext', class: Google::Apis::ServiceconsumermanagementV1beta1::SourceContext, decorator: Google::Apis::ServiceconsumermanagementV1beta1::SourceContext::Representation

          property :syntax, as: 'syntax'
        end
      end

      class Usage
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :producer_notification_channel, as: 'producerNotificationChannel'
          collection :requirements, as: 'requirements'
          collection :rules, as: 'rules', class: Google::Apis::ServiceconsumermanagementV1beta1::UsageRule, decorator: Google::Apis::ServiceconsumermanagementV1beta1::UsageRule::Representation

        end
      end

      class UsageRule
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :allow_unregistered_calls, as: 'allowUnregisteredCalls'
          property :selector, as: 'selector'
          property :skip_service_control, as: 'skipServiceControl'
        end
      end

      class V1Beta1BatchCreateProducerOverridesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :overrides, as: 'overrides', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride::Representation

        end
      end

      class V1Beta1ConsumerQuotaLimit
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :is_precise, as: 'isPrecise'
          property :metric, as: 'metric'
          property :name, as: 'name'
          collection :quota_buckets, as: 'quotaBuckets', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaBucket, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaBucket::Representation

          property :unit, as: 'unit'
        end
      end

      class V1Beta1ConsumerQuotaMetric
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :consumer_quota_limits, as: 'consumerQuotaLimits', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1ConsumerQuotaLimit, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1ConsumerQuotaLimit::Representation

          property :display_name, as: 'displayName'
          property :metric, as: 'metric'
          property :name, as: 'name'
          property :unit, as: 'unit'
        end
      end

      class V1Beta1DisableConsumerResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end

      class V1Beta1EnableConsumerResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end

      class V1Beta1GenerateServiceIdentityResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :identity, as: 'identity', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1ServiceIdentity, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1ServiceIdentity::Representation

        end
      end

      class V1Beta1ImportProducerOverridesRequest
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :force, as: 'force'
          property :inline_source, as: 'inlineSource', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1OverrideInlineSource, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1OverrideInlineSource::Representation

        end
      end

      class V1Beta1ImportProducerOverridesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :overrides, as: 'overrides', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride::Representation

        end
      end

      class V1Beta1ImportProducerQuotaPoliciesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :policies, as: 'policies', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1ProducerQuotaPolicy, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1ProducerQuotaPolicy::Representation

        end
      end

      class V1Beta1ListConsumerQuotaMetricsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :metrics, as: 'metrics', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1ConsumerQuotaMetric, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1ConsumerQuotaMetric::Representation

          property :next_page_token, as: 'nextPageToken'
        end
      end

      class V1Beta1ListProducerOverridesResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :next_page_token, as: 'nextPageToken'
          collection :overrides, as: 'overrides', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride::Representation

        end
      end

      class V1Beta1OverrideInlineSource
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :overrides, as: 'overrides', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride::Representation

        end
      end

      class V1Beta1ProducerQuotaPolicy
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :container, as: 'container'
          hash :dimensions, as: 'dimensions'
          property :metric, as: 'metric'
          property :name, as: 'name'
          property :policy_value, :numeric_string => true, as: 'policyValue'
          property :unit, as: 'unit'
        end
      end

      class V1Beta1QuotaBucket
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :admin_override, as: 'adminOverride', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride::Representation

          property :consumer_override, as: 'consumerOverride', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride::Representation

          property :default_limit, :numeric_string => true, as: 'defaultLimit'
          hash :dimensions, as: 'dimensions'
          property :effective_limit, :numeric_string => true, as: 'effectiveLimit'
          property :producer_override, as: 'producerOverride', class: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1Beta1QuotaOverride::Representation

        end
      end

      class V1Beta1QuotaOverride
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :admin_override_ancestor, as: 'adminOverrideAncestor'
          hash :dimensions, as: 'dimensions'
          property :metric, as: 'metric'
          property :name, as: 'name'
          property :override_value, :numeric_string => true, as: 'overrideValue'
          property :unit, as: 'unit'
        end
      end

      class V1Beta1RefreshConsumerResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end

      class V1Beta1ServiceIdentity
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :email, as: 'email'
          property :name, as: 'name'
          property :tag, as: 'tag'
          property :unique_id, as: 'uniqueId'
        end
      end

      class V1beta1AddVisibilityLabelsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :labels, as: 'labels'
        end
      end

      class V1beta1DefaultIdentity
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :email, as: 'email'
          property :name, as: 'name'
          property :unique_id, as: 'uniqueId'
        end
      end

      class V1beta1DisableConsumerResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end

      class V1beta1EnableConsumerResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end

      class V1beta1GenerateDefaultIdentityResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :attach_status, as: 'attachStatus'
          property :identity, as: 'identity', class: Google::Apis::ServiceconsumermanagementV1beta1::V1beta1DefaultIdentity, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1beta1DefaultIdentity::Representation

          property :role, as: 'role'
        end
      end

      class V1beta1GenerateServiceAccountResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :account, as: 'account', class: Google::Apis::ServiceconsumermanagementV1beta1::V1beta1ServiceAccount, decorator: Google::Apis::ServiceconsumermanagementV1beta1::V1beta1ServiceAccount::Representation

        end
      end

      class V1beta1RefreshConsumerResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
        end
      end

      class V1beta1RemoveVisibilityLabelsResponse
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          collection :labels, as: 'labels'
        end
      end

      class V1beta1ServiceAccount
        # @private
        class Representation < Google::Apis::Core::JsonRepresentation
          property :email, as: 'email'
          property :iam_account_name, as: 'iamAccountName'
          property :name, as: 'name'
          property :tag, as: 'tag'
          property :unique_id, as: 'uniqueId'
        end
      end
    end
  end
end


text:
<?php defined('BX_DOL') or die('hack attempt');

bx_import('BxBasePageDashboard');

/**
 * @see BxBasePageAccount
 */
class BxTemplPageDashboard extends BxBasePageDashboard
{
    public function __construct($aObject, $oTemplate = false)
    {
        parent::__construct($aObject, $oTemplate);
    }
}

/** @} */

redpajama_set_name: RedPajamaGithub


text:
package orange.spring4.transaction.exception;

/**
 * ${DESCRIPTION}
 *
 * @author Ricky Fung
 * @date 2017-03-03 11:20
 */
public class BookFailureException extends Exception {

    public BookFailureException() {
    }

    public BookFailureException(String message) {
        super(message);
    }

    public BookFailureException(String message, Throwable cause) {
        super(message, cause);
    }

    public BookFailureException(Throwable cause) {
        super(cause);
    }
}


text:
class Page < ActiveRecord::Base
  acts_as_tree
  has_paper_trail
  attr_accessible :content, :parent, :parent_id, :permalink
  serialize       :content, Hash

  class << self
    def find_by_path(path)
      return unless page = root

      page.walk(path) do |last, part|
        last.children.find_by_permalink(part) if last
      end
    end

    def update_content(path, content = {})
      page = root || Page.create(permalink: '')

      page = page.walk(path) do |last, part|
        last.children.find_or_create_by_permalink(part)
      end

      page.update_attributes(content: content)

      page
    end
  end

  def path
    if parent
      Pathname.new(parent.path) + permalink
    else
      Pathname.new("/")
    end.to_s
  end

  def walk(path, &block)
    parts = Pathname.new(path.to_s).each_filename

    parts.reduce(self, &block)
  end
end


text:
package uk.gov.gchq.gaffer.store.operation;

import org.junit.jupiter.api.Test;

import uk.gov.gchq.gaffer.operation.OperationTest;
import uk.gov.gchq.gaffer.store.operation.GetTraits.Builder;

import static org.junit.jupiter.api.Assertions.assertEquals;

public class GetTraitsTest extends OperationTest<GetTraits> {

    @Override
    protected GetTraits getTestObject() {
        return new GetTraits();
    }

    @Test
    @Override
    public void builderShouldCreatePopulatedOperation() {
        GetTraits op = new Builder().currentTraits(false).build();

        assertEquals(false, op.isCurrentTraits());
    }

    @Test
    @Override
    public void shouldShallowCloneOperation() {
        GetTraits op = new Builder().currentTraits(false).build();

        GetTraits clone = op.shallowClone();

        assertEquals(op.isCurrentTraits(), clone.isCurrentTraits());
    }

    @Test
    @Override
    public void shouldJsonSerialiseAndDeserialise() {
        // Given
        final GetTraits obj = new GetTraits.Builder().currentTraits(true).build();

        // When
        final byte[] json = toJson(obj);
        final GetTraits deserialisedObj = fromJson(json);

        // Then
        assertEquals(obj.isCurrentTraits(), deserialisedObj.isCurrentTraits());
    }

    @Test
    @Override
    public void shouldHaveSinceAnnotation() {
        // TODO Auto-generated method stub
        super.shouldHaveSinceAnnotation();
    }

    @Test
    @Override
    public void shouldHaveSummaryAnnotation() {
        // TODO Auto-generated method stub
        super.shouldHaveSummaryAnnotation();
    }
}


text:
import unittest
from conans.model.ref import ConanFileReference, PackageReference
from conans.server.service.service import ConanService, FileUploadDownloadService,\
    SearchService
from conans.paths import CONAN_MANIFEST, CONANINFO, SimplePaths
from conans.util.files import save_files, save, mkdir, load, md5sum
from conans.server.service.authorize import BasicAuthorizer
import os
from conans.errors import NotFoundException, RequestErrorException
from conans.test.utils.test_files import hello_source_files
from conans.server.store.file_manager import FileManager
from conans.server.crypto.jwt.jwt_updown_manager import JWTUpDownAuthManager
from datetime import timedelta
from time import sleep
from conans.model.manifest import FileTreeManifest
from conans.test.utils.test_files import temp_folder
from conans.server.store.disk_adapter import ServerDiskAdapter
from conans.search import DiskSearchManager, DiskSearchAdapter

class MockFileSaver():

    def __init__(self, filename, content):
        self.filename = filename
        self.content = content

    def save(self, abspath):
        save(os.path.join(abspath, self.filename), self.content)

class FileUploadDownloadServiceTest(unittest.TestCase):

    def setUp(self):
        self.updown_auth_manager = JWTUpDownAuthManager("secret",
                                                        timedelta(seconds=1))

        self.storage_dir = temp_folder()
        self.service = FileUploadDownloadService(self.updown_auth_manager, self.storage_dir)
        self.disk_path = os.path.join(self.storage_dir, "dir", "other")
        self.relative_file_path = "dir/other/thefile.txt"
        self.absolute_file_path = os.path.join(self.disk_path, "thefile.txt")
        mkdir(self.disk_path)
        self.content = "the content"

    def test_file_download(self):
        save(os.path.join(self.disk_path, "thefile.txt"), self.content)
        token = self.updown_auth_manager.get_token_for(self.relative_file_path,
                                                       "pepe", len(self.content))
        path_to_file = self.service.get_file_path(self.relative_file_path, token)

        self.assertEquals(path_to_file, self.absolute_file_path)

        readed_content = load(self.absolute_file_path)
        self.assertEquals(readed_content, self.content)

        # Expire token
        sleep(2)
        self.assertRaises(NotFoundException, self.service.get_file_path,
                          self.relative_file_path, token)

    def test_file_upload(self):
        token = self.updown_auth_manager.get_token_for(self.relative_file_path,
                                                       "pepe", len(self.content))

        file_saver = MockFileSaver("thefile.txt", self.content)
        self.assertFalse(os.path.exists(self.absolute_file_path))
        self.service.put_file(file_saver, self.absolute_file_path, token, len(self.content))

        self.assertTrue(os.path.exists(self.absolute_file_path))

        # Raises if wrong size
        self.assertRaises(RequestErrorException, self.service.put_file, file_saver,
                          self.absolute_file_path, token, len(self.content) + 1)

class ConanServiceTest(unittest.TestCase):

    def setUp(self):
        self.conan_reference = ConanFileReference.loads("openssl/2.0.3@lasote/testing")
        self.package_reference = PackageReference(self.conan_reference, "123123123")
        self.tmp_dir = temp_folder()

        read_perms = [("*/*@*/*", "*")]
        write_perms = []
        authorizer = BasicAuthorizer(read_perms, write_perms)

        self.fake_url = "http://url"
        updown_auth_manager = JWTUpDownAuthManager("secret",
                                                   timedelta(seconds=200))
        adapter = ServerDiskAdapter(self.fake_url, self.tmp_dir, updown_auth_manager)
        self.paths = SimplePaths(self.tmp_dir)
        self.file_manager = FileManager(self.paths, adapter)

        search_adapter = DiskSearchAdapter()
        self.search_manager = DiskSearchManager(self.paths, search_adapter)

        self.service = ConanService(authorizer, self.file_manager, "lasote")
        self.search_service = SearchService(authorizer, self.search_manager, "lasote")

        files = hello_source_files("test")
        save_files(self.paths.export(self.conan_reference), files)
        self.conan_digest = FileTreeManifest.create(self.paths.export(self.conan_reference))
        conan_digest_path = os.path.join(self.paths.export(self.conan_reference), CONAN_MANIFEST)
        save(conan_digest_path, str(self.conan_digest))

        files = hello_source_files("package")
        save_files(self.paths.package(self.package_reference), files)

    def test_get_conanfile_snapshot(self):
        snap = self.service.get_conanfile_snapshot(self.conan_reference)
        base_path = self.paths.export(self.conan_reference)

        snap_expected = {'hello.cpp': md5sum(os.path.join(base_path, "hello.cpp")),
                         'conanmanifest.txt': md5sum(os.path.join(base_path, "conanmanifest.txt")),
                         'executable': md5sum(os.path.join(base_path, "executable")),
                         'main.cpp':  md5sum(os.path.join(base_path, "main.cpp")),
                         'CMakeLists.txt':  md5sum(os.path.join(base_path, "CMakeLists.txt")),
                         'hellotest.h':  md5sum(os.path.join(base_path, "hellotest.h"))}

        self.assertEquals(snap, snap_expected)

    def test_get_conanfile_download_urls(self):
        urls = self.service.get_conanfile_download_urls(self.conan_reference)
        # Remove parameters
        urls = {name: url.split("?signature")[0] for name, url in urls.items()}

        def fake_url_build(filename):
            return self.fake_url + "/" + "/".join(self.conan_reference) + "/export/" + filename

        expected_urls = {'CMakeLists.txt': fake_url_build('CMakeLists.txt'),
                         'conanmanifest.txt': fake_url_build('conanmanifest.txt'),
                         'executable': fake_url_build('executable'),
                         'hello.cpp': fake_url_build('hello.cpp'),
                         'hellotest.h': fake_url_build('hellotest.h'),
                         'main.cpp': fake_url_build('main.cpp')}
        self.assertEquals(urls, expected_urls)

    def test_get_package_download_urls(self):
        urls = self.service.get_package_download_urls(self.package_reference)
        # Remove parameters
        urls = {name: url.split("?signature")[0] for name, url in urls.items()}

        def fake_url_build(filename):
            return self.fake_url + "/" + "/".join(self.package_reference.conan) \
                + "/package/" + self.package_reference.package_id + "/" + filename

        expected_urls = {'CMakeLists.txt': fake_url_build('CMakeLists.txt'),
                         'executable': fake_url_build('executable'),
                         'hello.cpp': fake_url_build('hello.cpp'),
                         'hellopackage.h': fake_url_build('hellopackage.h'),
                         'main.cpp': fake_url_build('main.cpp')}
        self.assertEquals(urls, expected_urls)

    def test_get_conanfile_upload_urls(self):
        urls = self.service.get_conanfile_upload_urls(self.conan_reference,
                                                      {"conanfile.py": 23,
                                                       "conanmanifest.txt": 24})
        # Remove parameters
        urls = {name: url.split("?signature")[0] for name, url in urls.items()}

        def fake_url_build(filename):
            return self.fake_url + "/" + "/".join(self.conan_reference) + "/export/" + filename

        expected_urls = {'conanfile.py': fake_url_build('conanfile.py'),
                         'conanmanifest.txt': fake_url_build('conanmanifest.txt')}
        self.assertEquals(urls, expected_urls)

    def test_get_package_upload_urls(self):
        urls = self.service.get_package_upload_urls(self.package_reference, {"uno.lib": 23,
                                                                             "dos.dll": 24})
        # Remove parameters
        urls = {name: url.split("?signature")[0] for name, url in urls.items()}

        def fake_url_build(filename):
            return self.fake_url + "/" + "/".join(self.package_reference.conan) \
                + "/package/" + self.package_reference.package_id + "/" + filename

        expected_urls = {'uno.lib': fake_url_build('uno.lib'),
                         'dos.dll': fake_url_build('dos.dll')}
        self.assertEquals(urls, expected_urls)

    def test_search(self):
        """ check the dict is returned by get_packages_info service
        """
        # Creating and saving conans, packages, and conans.vars
        conan_ref2 = ConanFileReference("openssl", "3.0", "lasote", "stable")
        conan_ref3 = ConanFileReference("Assimp", "1.10", "fenix", "stable")
        conan_ref4 = ConanFileReference("assimpFake", "0.1", "phil", "stable")

        package_ref2 = PackageReference(conan_ref2, "12345587754")
        package_ref3 = PackageReference(conan_ref3, "77777777777")

        conan_vars = """
[options]
    use_Qt=%s
"""
        conan_vars1 = conan_vars % "True"
        conan_vars2 = conan_vars % "False"
        conan_vars3 = conan_vars % "True"

        save_files(self.paths.package(self.package_reference), {CONANINFO: conan_vars1})
        save_files(self.paths.package(package_ref2), {CONANINFO: conan_vars2})
        save_files(self.paths.package(package_ref3), {CONANINFO: conan_vars3})
        save_files(self.paths.export(conan_ref4), {"dummy.txt": "//"})

        info = self.search_service.search()
        expected = [conan_ref3, conan_ref4, self.conan_reference, conan_ref2]
        self.assertEqual(expected, info)

        info = self.search_service.search(pattern="Assimp*", ignorecase=False)
        self.assertEqual(info, [conan_ref3])

        info = self.search_service.search_packages(conan_ref2, None)
        self.assertEqual(info, {'12345587754': {'full_requires': [],
                                                'options': {'use_Qt': 'False'},
                                                'settings': {},
                                                'recipe_hash': None}})

        info = self.search_service.search_packages(conan_ref3, None)
        self.assertEqual(info, {'77777777777': {'full_requires': [],
                                                'options': {'use_Qt': 'True'},
                                                'settings': {},
                                                'recipe_hash': None}})

    def remove_test(self):
        conan_ref2 = ConanFileReference("OpenCV", "3.0", "lasote", "stable")
        conan_ref3 = ConanFileReference("Assimp", "1.10", "lasote", "stable")

        package_ref2 = PackageReference(conan_ref2, "12345587754")
        package_ref3 = PackageReference(conan_ref3, "77777777777")

        save_files(self.paths.export(conan_ref2), {"fake.txt": "//fake"})
        save_files(self.paths.package(package_ref2), {"fake.txt": "//fake"})
        save_files(self.paths.package(package_ref3), {"fake.txt": "//fake"})

        # Delete all the conans folder
        self.service.remove_conanfile(self.conan_reference)
        conan_path = self.paths.conan(self.conan_reference)
        self.assertFalse(os.path.exists(conan_path))

        # Delete one package
        self.service.remove_packages(conan_ref3, ["77777777777"])
        package_folder_3 = self.paths.package(PackageReference(conan_ref3, '077777777777'))
        self.assertFalse(os.path.exists(package_folder_3))

        # Raise an exception
        self.assertRaises(NotFoundException,
                          self.service.remove_conanfile,
                          ConanFileReference("Fake", "1.0", "lasote", "stable"))


text:
<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 20792 -->
<!-- Reviewed: no -->
<sect1 id="zend.layout.introduction">
    <title>Einführung</title>

    <para>
        <classname>Zend_Layout</classname> implementiert ein plassisches Zwei Schritt View Pattern,
        welches Entwicklern erlaubt Anwendungs Inhalte innerhalb von anderen Views einzupacken, die
        normalerweise Site Templates repräsentieren. Solche Templates werden oft von anderen
        Projekten als <emphasis>Layouts</emphasis> bezeichnet, und Zend Framework hat diesen Begriff
        der Konsistenz halber übernommen.
    </para>

    <para>
        Die Hauptziele von <classname>Zend_Layout</classname> sind wie folgt:
    </para>

    <itemizedlist>
        <listitem>
            <para>
                Automatische Auswahl und Darstellung von Layouts wenn diese mit den Zend Framework
                <acronym>MVC</acronym> Komponenten verwendet werden.
            </para>
        </listitem>

        <listitem>
            <para>
                Bietet einen seperierten Bereich für Layouts die auf Variablen und Inhalte bezogen
                sind.
            </para>
        </listitem>

        <listitem>
            <para>
                Erlaubt Konfiguration, inklusive Layout Name, Layout Skript Auflösung (Beugung), und
                Layout Skript Pfad.
            </para>
        </listitem>

        <listitem>
            <para>
                Erlaubt das Ausschalten von Layouts, die Änderung von Layout Skripts, und andere
                Stati; erlaubt diese Aktionen von innerhalb des Aktions Controllers und von View
                Skripten.
            </para>
        </listitem>

        <listitem>
            <para>
                Folgt den selben Skript Auflösungs Regeln (Beugung) wie der
                <link linkend="zend.controller.actionhelpers.viewrenderer">ViewRenderer</link>, aber
                erlaubt auch die Verwendung von anderen Regeln.
            </para>
        </listitem>

        <listitem>
            <para>
                Erlaubt die Verwendung auch ohne Zend Framework <acronym>MVC</acronym> Komponenten.
            </para>
        </listitem>
    </itemizedlist>
</sect1>


text:
/* seqwrite.h -- write adagio format file */
/* Copyright 1994 Carnegie Mellon University */

void seq_write(seq_type seq, FILE *f, boolean abs_flag);
        /* LISP: (SEQ-WRITE SEQ FILE BOOLEAN) */


text:
var util = require("util");
var Message = require("../message.js");

// This message inherits from the Message base class and contains the time
// provided to the server from the client in response to a RequestTimeMessage. The
// client can respond with a time of -1 if it's clock hasn't been started.
function ResponseTimeMessage()
{
  //A string identifier that uniquely represents the client
  this.clientId = null;

  //A string representing a unique identifier for the request batch
  this.requestBatchId = null;

  this.time = null;

  //The list of attributes that this message has
  this.attributes = ["clientId", "requestBatchId", "time"];

  //PRIVILEGED METHODS

  //Getter for clientId
  this.getRequestBatchId = function() {
    return this.requestBatchId;
  };

  //Setter for clientId
  this.setRequestBatchId = function(requestBatchId) {
    this.requestBatchId = requestBatchId;
  };

  //Getter for clientId
  this.getClientId = function() {
    return this.clientId;
  };

  //Setter for clientId
  this.setClientId = function(clientId) {
    this.clientId = clientId;
  };

  //Getter for time
  this.getTime = function() {
    return this.time;
  };

  //Setter for time
  this.setTime = function(time) {
    if(!time.toString().match(/-?\d+/))
    {
      return new Error("Time must be an integer");
    }
    this.time = time;
  };
}

util.inherits(ResponseTimeMessage, Message);

module.exports = ResponseTimeMessage;


text:
package atto
package parser

package object spire extends Spire


text:
layout: doc-page
title: "Reference"
nightlyOf: https://docs.scala-lang.org/scala3/reference/overview.html
redirectFrom: overview.html
---

Scala 3 implements many language changes and improvements over Scala 2.
In this reference, we discuss design decisions and present important differences compared to Scala 2.

## Goals

The language redesign was guided by three main goals:

- Strengthen Scala's foundations.
  Make the full programming language compatible with the foundational work on the
  [DOT calculus](https://infoscience.epfl.ch/record/227176/files/soundness_oopsla16.pdf)
  and apply the lessons learned from that work.
- Make Scala easier and safer to use.
  Tame powerful constructs such as implicits to provide a gentler learning curve. Remove warts and puzzlers.
- Further improve the consistency and expressiveness of Scala's language constructs.

Corresponding to these goals, the language changes fall into seven categories:
(1) Core constructs to strengthen foundations, (2) simplifications and (3) [restrictions](#restrictions), to make the language easier and safer to use, (4) [dropped constructs](#dropped-constructs) to make the language smaller and more regular, (5) [changed constructs](#changes) to remove warts, and increase consistency and usability, (6) [new constructs](#new-constructs) to fill gaps and increase expressiveness, (7) a new, principled approach to metaprogramming that replaces [Scala 2 experimental macros](https://docs.scala-lang.org/overviews/macros/overview.html).

## Essential Foundations

These new constructs directly model core features of DOT, higher-kinded types, and the [SI calculus for implicit resolution](https://infoscience.epfl.ch/record/229878/files/simplicitly_1.pdf).

- [Intersection types](new-types/intersection-types.md), replacing compound types,
- [Union types](new-types/union-types.md),
- [Type lambdas](new-types/type-lambdas.md), replacing encodings using structural types and type projection.
- [Context functions](contextual/context-functions.md), offering abstraction over given parameters.

## Simplifications

These constructs replace existing constructs with the aim of making the language safer and simpler to use, and to promote uniformity in code style.

- [Trait parameters](other-new-features/trait-parameters.md)
  replace [early initializers](dropped-features/early-initializers.md) with a more generally useful construct.
- [Given instances](contextual/givens.md)
  replace implicit objects and defs, focussing on intent over mechanism.
- [Using clauses](contextual/using-clauses.md)
  replace implicit parameters, avoiding their ambiguities.
- [Extension methods](contextual/extension-methods.md)
  replace implicit classes with a clearer and simpler mechanism.
- [Opaque type aliases](other-new-features/opaques.md)
  replace most uses of value classes while guaranteeing the absence of boxing.
- [Top-level definitions](dropped-features/package-objects.md)
  replace package objects, dropping syntactic boilerplate.
- [Export clauses](other-new-features/export.md)
  provide a simple and general way to express aggregation, which can replace
  the previous facade pattern of package objects inheriting from classes.
- [Vararg splices](changed-features/vararg-splices.md)
  now use the form `xs*` in function arguments and patterns instead of `xs: _*` and `xs @ _*`,
- [Universal apply methods](other-new-features/creator-applications.md)
  allow using simple function call syntax instead of `new` expressions. `new` expressions stay around
  as a fallback for the cases where creator applications cannot be used.

With the exception of [early initializers](dropped-features/early-initializers.md) and old-style vararg patterns, all superseded constructs continue to be available in Scala 3.0. The plan is to deprecate and phase them out later.

Value classes (superseded by opaque type aliases) are a special case. There are currently no deprecation plans for value classes, since we might bring them back in a more general form if they are supported natively by the JVM as is planned by [project Valhalla](https://openjdk.java.net/projects/valhalla/).

## Restrictions

These constructs are restricted to make the language safer.

- [Implicit Conversions](contextual/conversions.md):
  there is only one way to define implicit conversions instead of many, and potentially surprising implicit conversions require a language import.
- [Given Imports](contextual/given-imports.md):
  implicits now require a special form of import, to make the import clearly visible.
- [Type Projection](dropped-features/type-projection.md):
  only classes can be used as prefix `C` of a type projection `C#A`. Type projection on abstract types is no longer supported since it is unsound.
- [Multiversal Equality](contextual/multiversal-equality.md):
  implement an "opt-in" scheme to rule out nonsensical comparisons with `==` and `!=`.
- [infix](changed-features/operators.md):
  make method application syntax uniform across code bases.

Unrestricted implicit conversions continue to be available in Scala 3.0, but will be deprecated and removed later. Unrestricted versions of the other constructs in the list above are available only under `-source 3.0-migration`.

## Dropped Constructs

These constructs are proposed to be dropped without a new construct replacing them. The motivation for dropping these constructs is to simplify the language and its implementation.

- [DelayedInit](dropped-features/delayed-init.md),
- [Existential types](dropped-features/existential-types.md),
- [Procedure syntax](dropped-features/procedure-syntax.md),
- [Class shadowing](dropped-features/class-shadowing.md),
- [XML literals](dropped-features/xml.md),
- [Symbol literals](dropped-features/symlits.md),
- [Auto application](dropped-features/auto-apply.md),
- [Weak conformance](dropped-features/weak-conformance.md),
- Compound types (replaced by [Intersection types](new-types/intersection-types.md)),
- [Auto tupling](https://github.com/lampepfl/dotty/pull/4311) (implemented, but not merged).

The date when these constructs are dropped varies. The current status is:

- Not implemented at all:
    - DelayedInit, existential types, weak conformance.
- Supported under `-source 3.0-migration`:
    - procedure syntax, class shadowing, symbol literals, auto application, auto tupling in a restricted form.
- Supported in 3.0, to be deprecated and phased out later:
    - [XML literals](dropped-features/xml.md), compound types.

## Changes

These constructs have undergone changes to make them more regular and useful.

- [Structural Types](changed-features/structural-types.md):
  They now allow pluggable implementations, which greatly increases their usefulness. Some usage patterns are restricted compared to the status quo.
- [Name-based pattern matching](changed-features/pattern-matching.md):
  The existing undocumented Scala 2 implementation has been codified in a slightly simplified form.
- [Automatic Eta expansion](changed-features/eta-expansion.md):
  Eta expansion is now performed universally also in the absence of an expected type. The postfix `_` operator is thus made redundant. It will be deprecated and dropped after Scala 3.0.
- [Implicit Resolution](changed-features/implicit-resolution.md):
  The implicit resolution rules have been cleaned up to make them more useful and less surprising. Implicit scope is restricted to no longer include package prefixes.

Most aspects of old-style implicit resolution are still available under `-source 3.0-migration`. The other changes in this list are applied unconditionally.

## New Constructs

These are additions to the language that make it more powerful or pleasant to use.

- [Enums](enums/enums.md) provide concise syntax for enumerations and [algebraic data types](enums/adts.md).
- [Parameter untupling](other-new-features/parameter-untupling.md) avoids having to use `case` for tupled parameter destructuring.
- [Dependent function types](new-types/dependent-function-types.md) generalize dependent methods to dependent function values and types.
- [Polymorphic function types](new-types/polymorphic-function-types.md) generalize polymorphic methods to polymorphic function values and types.
  _Current status_: There is a proposal and a merged prototype implementation, but the implementation has not been finalized (it is notably missing type inference support).
- [Kind polymorphism](other-new-features/kind-polymorphism.md) allows the definition of operators working equally on types and type constructors.
- [`@targetName` annotations](other-new-features/targetName.md) make it easier to interoperate with code written in other languages and give more flexibility for avoiding name clashes.

## Metaprogramming

The following constructs together aim to put metaprogramming in Scala on a new basis. So far, metaprogramming was achieved by a combination of macros and libraries such as [Shapeless](https://github.com/milessabin/shapeless) that were in turn based on some key macros. Current Scala 2 macro mechanisms are a thin veneer on top of the current Scala 2 compiler, which makes them fragile and in many cases impossible to port to Scala 3.

It's worth noting that macros were never included in the [Scala 2 language specification](https://scala-lang.org/files/archive/spec/2.13/) and were so far made available only under an `-experimental` flag. This has not prevented their widespread usage.

To enable porting most uses of macros, we are experimenting with the advanced language constructs listed below. These designs are more provisional than the rest of the proposed language constructs for Scala 3.0. There might still be some changes until the final release. Stabilizing the feature set needed for metaprogramming is our first priority.

- [Match Types](new-types/match-types.md)
  allow computation on types.
- [Inline](metaprogramming/inline.md)
  provides by itself a straightforward implementation of some simple macros and is at the same time an essential building block for the implementation of complex macros.
- [Quotes and Splices](metaprogramming/macros.md)
  provide a principled way to express macros and staging with a unified set of abstractions.
- [Type class derivation](contextual/derivation.md)
  provides an in-language implementation of the `Gen` macro in Shapeless and other foundational libraries. The new implementation is more robust, efficient and easier to use than the macro.
- [By-name context parameters](contextual/by-name-context-parameters.md)
  provide a more robust in-language implementation of the `Lazy` macro in [Shapeless](https://github.com/milessabin/shapeless).

## See Also

[A classification of proposed language features](./features-classification.md) is
an expanded version of this page that adds the status (i.e. relative importance to be a part of Scala 3, and relative urgency when to decide this) and expected migration cost
of each language construct.