OrleansContrib / Orleans.Providers.Firebase

Orleans providers for Firebase realtime database.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Orleans.Providers.Firebase

An implementation of the Orleans storage and membership provider models for Firebase realtime database.

This provider library is in early development and is not recommended for production usage.

Usage

Host Configuration

Manually reference the Orleans.Providers.Firebase project (NuGet package not yet available).

Update OrleansConfiguration.xml in the Host application to add the following (example configuration)...

<OrleansConfiguration xmlns="urn:orleans">
  <Globals>
    <StorageProviders>
      <Provider Type="Orleans.Providers.Firebase.Storage.FirebaseStorageProvider" Name="Default" BasePath="https://{yourfirebasedatabase}.firebaseio.com" Key="{YourFirebaseKeyInBase64}"/>
    </StorageProviders>
    ...
    <SystemStore SystemStoreType="Custom" DataConnectionString="https://{yourfirebasedatabase}.firebaseio.com|{YourFirebaseKeyInBase64}" MembershipTableAssembly="Orleans.Providers.Firebase" ReminderServiceType="ReminderTableGrain" ReminderTableAssembly="Orleans.Providers.Firebase"/>
  </Globals>
</OrleansConfiguration>

The Key above can be created by Base64 encoding a .json Google service account key. Powershell example:

powershell "[convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes((Get-Content -Path MyFirebaseServiceKey.json)))"

Examples

See the Orleans.Providers.Firebase.Tests.Host project for example usage.

About

Orleans providers for Firebase realtime database.

License:MIT License


Languages

Language:C# 100.0%