resource v3.1.1

Abstraction over RethinkORM changefeeds

PlaceOS Resource

CI

Abstraction over PgORM changefeeds

Implementation

PlaceOS::Resource(T) is a layer over PgORM models, providing an abstract interface to a table's changefeed.

abstract def process_resource(action : Action, resource : T)

process_resource(action : Action, resource : T) is the only abstract method one must implement. On startup, the entire table is iterated asynchronously, yielding :created events for each model.

After the initial pass, Action::Created, Action::Deleted, and Action::Updated events on the table are processed as they are received.

Action::Updated

The model received with a :updated event has the changes applied in the form of standard active-model attribute changes information.

def on_reconnect

A non-abstract def. In its stock form, on_reconnect is a noop.

This method can be overwritten in inheriting classes to perform actions after a changefeed is recovered.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

Repository

resource

Owner
Statistic
  • 1
  • 1
  • 0
  • 5
  • 5
  • about 1 month ago
  • July 17, 2020
License

MIT License

Links
Synced at

Sat, 23 Nov 2024 12:12:47 GMT

Languages