• Guides
  • Api Reference
  • FAQ
  • Api Reference
  • FunctionMonkey.Abstractions
Show / Hide Table of Contents
  • FunctionMonkey
    • AbstractPluginFunctions
    • ClaimMappingCompilationException
    • ConfigurationException
    • DeserializationException
    • PluginFunctions
    • Runtime
    • RuntimeInstance
    • TypeLoadingException
  • FunctionMonkey.Abstractions
    • HttpResponse
    • IClaimsPrincipalAuthorization
    • ICommandClaimsBinder
    • ICommandingConfigurator
    • ICommandTransformer
    • IContextProvider
    • IContextSetter
    • IFunctionAppConfiguration
    • IFunctionAppHost
    • IFunctionCompilerMetadata
    • IMediatorDecorator
    • IMediatorResultTypeExtractor
    • IMediatorTypeSafetyEnforcer
    • IOutputBindingConverter
    • ISerializer
    • ITimerCommandFactory<TCommand>
    • ITokenValidator
    • TokenValidationResult
  • FunctionMonkey.Abstractions.Builders
    • AuthorizationTypeEnum
    • IAuthorizationBuilder
    • IClaimsMappingBuilder
    • IClientCompilerOptionsBuilder
    • ICompilerOptionsBuilder
    • ICosmosDbFunctionBuilder
    • ICosmosDbFunctionOptionBuilder<TCommand>
    • IEventHubFunctionBuilder
    • IEventHubFunctionOptionBuilder<TCommand>
    • IFunctionAppHostBuilder
    • IFunctionBuilder
    • IFunctionHostBuilder
    • IFunctionOptions<TParentBuilder, TFunctionOptionsBuilder>
    • IFunctionOptionsBuilder
    • IHttpFunctionBuilder
    • IHttpFunctionConfigurationBuilder<TCommand>
    • IHttpFunctionOptionsBuilder<TCommand>
    • IHttpRouteFunctionBuilder
    • IHttpRouteOptionsBuilder
    • IOpenApiBuilder
    • IOpenApiDocumentFilter
    • IOpenApiDocumentFilterContext
    • IOpenApiOperationFilter
    • IOpenApiOperationFilterContext
    • IOpenApiParameterFilter
    • IOpenApiParameterFilterContext
    • IOpenApiSchemaFilter
    • IOpenApiSchemaFilterContext
    • IOutputBindingBuilder<TFunctionTypeBuilder>
    • ISerializationBuilder
    • IServiceBusFunctionBuilder
    • IServiceBusFunctionOptionBuilder<TCommand>
    • ISignalRFunctionBuilder
    • ISignalRFunctionConfigurationBuilder<TCommand>
    • IStorageFunctionBuilder
    • IStorageFunctionOptionBuilder<TCommand>
    • ITimerFunctionBuilder
    • ITimerFunctionOptionsBuilder<TCommand>
  • FunctionMonkey.Abstractions.Builders.Model
    • AbstractFunctionDefinition
    • AbstractOutputBinding
    • BridgedFunction
    • ConnectionStringSettingNames
    • HeaderBindingConfiguration
  • FunctionMonkey.Abstractions.Contexts
    • BlobContext
    • EventHubContext
    • ExecutionContext
    • HttpContext
    • ServiceBusContext
    • StorageQueueContext
  • FunctionMonkey.Abstractions.Extensions
    • TypeExtensions
  • FunctionMonkey.Abstractions.Http
    • AbstractClaimsMappingDefinition
    • CommandPropertyClaimsMappingDefinition
    • IHttpResponseHandler
    • OpenApiConfiguration
    • SharedClaimsMappingDefinition
  • FunctionMonkey.Abstractions.SignalR
    • GroupActionEnum
    • SignalRGroupAction
    • SignalRMessage
  • FunctionMonkey.Abstractions.Validation
    • IValidator
  • FunctionMonkey.AspNetCore
    • AuthenticationBuilderExtensions
    • AuthenticationOptions
    • FunctionMonkeyAuthHandler
    • IWebHostBuilderExtensions
    • JsonSecurityPropertyContractResolver
    • TokenValidatedContext
    • TokenValidationDefaults
  • FunctionMonkey.Builders
    • ClientCompilerOptionsBuilder
    • CosmosDbFunctionOptionBuilder<TCommandOuter>
    • FunctionBuilder
    • HttpFunctionOptionsBuilder<TCommand>
    • SerializationBuilder
    • StorageFunctionOptionBuilder<TCommandOuter>
  • FunctionMonkey.Commanding.Abstractions
    • ICommandWithNoHandler
    • IgnorePropertyAttribute
    • IStreamCommand
    • SignalRNegotiateResponse
  • FunctionMonkey.Commanding.Abstractions.Validation
    • SeverityEnum
    • ValidationError
    • ValidationException
    • ValidationObjectException
    • ValidationResult
    • ValidationResult<TResult>
  • FunctionMonkey.Commanding.Cosmos.Abstractions
    • ICosmosDbDocumentBatchCommand
    • ICosmosDbDocumentCommand
    • ICosmosDbErrorHandler
  • FunctionMonkey.Extensions
    • ServiceCollectionExtensions
    • Utils
  • FunctionMonkey.FluentValidation
    • IFunctionHostBuilderExtensions
    • IOpenApiBuilderExtensions
    • IServiceCollectionExtensions
  • FunctionMonkey.FluentValidation.OpenApi
    • OpenApiFluentValidationHelper
    • OpenApiFluentValidationRule
    • OpenApiFluentValidationRuleContext
  • FunctionMonkey.Infrastructure
    • DefaultMediatorTypeSafetyEnforcer
  • FunctionMonkey.MediatR
    • IFunctionHostBuilderExtensions
    • MediatRResultTypeExtractor
    • MediatRTypeSafetyEnforcer
  • FunctionMonkey.Serialization
    • CamelCaseJsonSerializer
    • DefaultCaseJsonSerializer
    • JsonSecurityPropertyContractResolver
    • NamingStrategyJsonSerializer
    • SecurityPropertyDefaultValueConverter
    • SnakeCaseJsonSerializer
  • FunctionMonkey.SignalR
    • AzureSignalRAuthClient
    • Converter
  • FunctionMonkey.Testing
    • AbstractAcceptanceTest
    • AcceptanceTestScaffold
    • HttpResponseExtensions
    • TestException
    • ValidatingDispatcher
    • ValidationException
  • FunctionMonkey.Testing.Mocks
    • CommandClaimsBinderMock
    • ContextManagerMock
  • FunctionMonkey.TokenValidator
    • IAuthorizationBuilderExtensions
  • FunctionMonkey.TokenValidator.Implementation
    • TokenValidator
  • SimpleJson
    • IJsonSerializerStrategy
    • JsonArray
    • JsonObject
    • PocoJsonSerializerStrategy
    • SimpleJson

Namespace FunctionMonkey.Abstractions

Classes

HttpResponse

TokenValidationResult

Interfaces

IClaimsPrincipalAuthorization

Can be implemented to provide authorization based on a claims principal, a verb and a url

ICommandClaimsBinder

Implementations of this interface lift claims from the a authenticated user and map them onto the properties of a command

ICommandingConfigurator

Can be implemented by the class that implements IFunctionAppConfiguration to customize how the AzureFromTheTrenches.Commanding system is initialised.

ICommandTransformer

IContextProvider

This can be injected into command handlers to obtain additional context information from the trigger - for example how many times a message has been dequeued.

Care should be taken not to overuse this as it effectively binds the handler to an explicit host / message type implementation and ideally these concerns are kept separate.

IContextSetter

Used by the compiled functions to set the context information available through IContextProvider

IFunctionAppConfiguration

Must be implemented by a class in the Function app to configure the Azure Functions and the runtime

IFunctionAppHost

IFunctionCompilerMetadata

IMediatorDecorator

Buffers Function Monkey from the underlying mediator implementation

IMediatorResultTypeExtractor

IMediatorTypeSafetyEnforcer

Used by Function Monkey to determine if commands implement the appropriate interfaces for the in use mediator. This is only called by the compiler so there is no big need to have it be massively performant - refelction is fine!

IOutputBindingConverter

If an output converter is registered it will be called before the result of executing a command is passed into an output collector allowing the result to be shaped into a different result.

This can be useful to keep protocol concerns out of the business domain or to help migrate an existing business domain into Azure Functions

ISerializer

Implementations of this interface are able to deserialize commands from JSON strings while ensuring that any properties marked with the SecurityPropertyAttribute are not included in the deserialization process.

ITimerCommandFactory<TCommand>

ITokenValidator

This can be implemented to provide Authorization header validation / verification and set claims for HTTP triggers. See this gist for an example: https://gist.github.com/JamesRandall/e83f72f98bde2f6ff973e6ecb81199c8

  • 0 Comments
In This Article
  • Classes
  • Interfaces
Back to top Copyright © 2018 James Randall