minerva_mcache 1.0.0 copy "minerva_mcache: ^1.0.0" to clipboard
minerva_mcache: ^1.0.0 copied to clipboard

Minerva agent for using mcache package between different server instances.

pub package

Languages:

English Russian

About package #

This package is an additional package for Minerva framework, to use mcache of the package in multi-way request processing.

This package provides a ready-made agent for the Minerva framework, which provides access to the cache from different server instances.

How to use #

You can add an agent using the CacheAgentData class, in this case the standard name of the agent will be cache, you can set additional settings for cache operation. Or you can specify the data for the agent yourself, using the AgentData class.

Example of adding an agent in the MinervaAgentsBuilder class using CacheAgentData:

class AgentsBuilder extends MinervaAgentsBuilder {
  @override
  List<AgentData> build() {
    final agents = <AgentData>[];

    agents.add(CacheAgentData());

    return agents;
  }
}

Example of adding an agent in the MinervaAgentsBuilder class using AgentData:

class AgentsBuilder extends MinervaAgentsBuilder {
  @override
  List<AgentData> build() {
    final agents = <AgentData>[];

    agents.add(AgentData('cache', CacheAgent()));

    return agents;
  }
}

You can get a connector for this agent by its name.

Example getting a connector for an agent by its name:

class CounterApi extends Api {
  late final AgentConnector _connector;

  @override
  void initialize(ServerContext context) {
    _connector = context.connectors['cache']!;
  }

  @override
  void build(Endpoints endpoints) {}
}

For more convenience of interaction with the agent, there is a class MinervaCache. You can use this interaction interface by creating an instance of the MinervaCache class. You can create an instance of the MinervaCache class by passing a connector for the caching agent to its constructor, or use its of method by passing our ServerContext to it.

The MinervaCache class contains methods for all the basic operations of the mcache package, such as:

  • set;
  • get;
  • update;
  • delete;
  • has;
  • clear.

Example of creating an instance of the MinervaCache class using the of method:

class CounterApi extends Api {
  late final MinervaCache _cache;

  @override
  void initialize(ServerContext context) {
    _cache = MinervaCache.of(context);
  }

  @override
  void build(Endpoints endpoints) {}
}

Example of creating an instance of the MinervaCache class by passing a connector to it:

class CounterApi extends Api {
  late final MinervaCache _cache;

  @override
  void initialize(ServerContext context) {
    final connector = context.connectors['cache']!;

    _cache = MinervaCache(connector);
  }

  @override
  void build(Endpoints endpoints) {}
}
0
likes
130
points
27
downloads

Publisher

verified publisherbatykov-gleb.ru

Weekly Downloads

Minerva agent for using mcache package between different server instances.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

mcache, minerva

More

Packages that depend on minerva_mcache