40 lines
864 B
Markdown
40 lines
864 B
Markdown
```text
|
||
//Содержит непосредственно инфу о ресурсе
|
||
Subscription {
|
||
String name; //telegram
|
||
NetworkScope scope;
|
||
}
|
||
|
||
SubscriptionQueryResult{
|
||
bool isUpdated()
|
||
NetworkScope get()
|
||
}
|
||
|
||
//Протокол, по которому загружаются подписки (git, rest, local, etc)
|
||
SubscriptionProviderProtocol {
|
||
//impl
|
||
string protocolId;
|
||
bool get(config) //true if updated
|
||
}
|
||
|
||
SubscriptionProvider{
|
||
private SubscriptionProviderConfig config;
|
||
private SubscriptionProviderProtocol protocol;
|
||
|
||
List<Subscription> get();
|
||
void update();
|
||
event updated();
|
||
}
|
||
|
||
//Конфиг Провайдера подписок
|
||
SubscriptionProviderConfig {
|
||
string protocolId;
|
||
Properties properties;
|
||
}
|
||
|
||
//репозиторий конфигов
|
||
SubscriptionProviderConfigRepository{
|
||
|
||
}
|
||
|
||
``` |