Skip to content

Commit

Permalink
New protocol buffer for topology data (#12)
Browse files Browse the repository at this point in the history
## Description

new protocol buffer for topology data

## Changes Made

new protocol buffer for topology data

## Related Issues

Fixes #10

## Checklist

- [x] I have used a PR title that is descriptive enough for a release
note.
- [x] I have tested these changes locally.
- [x] I have added appropriate tests or updated existing tests.
- [ ] I have tested these changes on a dedicated VM or a customer VM
[name of the VM]
- [x] I have added appropriate documentation or updated existing
documentation.

---------

Co-authored-by: Bot <[email protected]>
  • Loading branch information
chicco785 and Bot authored Nov 8, 2023
1 parent 3543e23 commit a3998ef
Show file tree
Hide file tree
Showing 8 changed files with 1,457 additions and 19 deletions.
1 change: 1 addition & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

### Features

- New protocol buffer for topology data (PR #12 by @chicco785)
- Notification message: support Trigger requirements (PR #6 by @chicco785)
- Add protocol buffer to describe faults (PR #3 by @chicco785)

Expand Down
22 changes: 18 additions & 4 deletions docs/task.proto.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,14 @@ class Parameter {
classDiagram
direction LR
%% A task message. Headers used in rabbitMQ: * `id`: id of the `Task` * `type`: always `Task` * `producerId`: the id of the producer (e.g. a PMU) linked to the notification. * `timestampId`: related measurement Unix msec timestamp (if any) * `taskType`: The textual representation of the task type.
%% A task message.
%% Headers used in rabbitMQ:
%% * `id`: id of the `Task`
%% * `type`: always `Task`
%% * `producerId`: the id of the producer (e.g. a PMU) linked to the notification.
%% * `timestampId`: related measurement Unix msec timestamp (if any)
%% * `taskType`: The textual representation of the task type.
%%
class Task {
+ int64 createdAt
Expand All @@ -115,7 +122,14 @@ Task --> `TaskType`
classDiagram
direction LR
%% A notification message. Headers used in rabbitMQ: * `id`: id of the `Notification` * `type`: always `Notification` * `producerId`: the id of the producer (e.g. a PMU) linked to the notification. * `timestampId`: related measurement Unix msec timestamp (if any) * `notificationType`: The textual representation of the notification type.
%% A notification message.
%% Headers used in rabbitMQ:
%% * `id`: id of the `Notification`
%% * `type`: always `Notification`
%% * `producerId`: the id of the producer (e.g. a PMU) linked to the notification.
%% * `timestampId`: related measurement Unix msec timestamp (if any)
%% * `notificationType`: The textual representation of the notification type.
%%
class Notification {
+ int64 createdAt
Expand All @@ -142,7 +156,7 @@ Notification --> `Parameter`
## Message: Task
<div style="font-size: 12px; margin-top: -10px;" class="fqn">FQN: platform.v1.Task</div>

<div class="comment"><span>A task message. Headers used in rabbitMQ: * `id`: id of the `Task` * `type`: always `Task` * `producerId`: the id of the producer (e.g. a PMU) linked to the notification. * `timestampId`: related measurement Unix msec timestamp (if any) * `taskType`: The textual representation of the task type.</span><br/></div>
<div class="comment"><span>A task message.</span><br/><span>Headers used in rabbitMQ:</span><br/><span>* `id`: id of the `Task`</span><br/><span>* `type`: always `Task`</span><br/><span>* `producerId`: the id of the producer (e.g. a PMU) linked to the notification.</span><br/><span>* `timestampId`: related measurement Unix msec timestamp (if any)</span><br/><span>* `taskType`: The textual representation of the task type.</span><br/><span></span><br/></div>

| Field | Ordinal | Type | Label | Description |
|------------|---------|-----------|----------|-------------------------------------------|
Expand All @@ -154,7 +168,7 @@ Notification --> `Parameter`
## Message: Notification
<div style="font-size: 12px; margin-top: -10px;" class="fqn">FQN: platform.v1.Notification</div>

<div class="comment"><span>A notification message. Headers used in rabbitMQ: * `id`: id of the `Notification` * `type`: always `Notification` * `producerId`: the id of the producer (e.g. a PMU) linked to the notification. * `timestampId`: related measurement Unix msec timestamp (if any) * `notificationType`: The textual representation of the notification type.</span><br/></div>
<div class="comment"><span>A notification message.</span><br/><span>Headers used in rabbitMQ:</span><br/><span>* `id`: id of the `Notification`</span><br/><span>* `type`: always `Notification`</span><br/><span>* `producerId`: the id of the producer (e.g. a PMU) linked to the notification.</span><br/><span>* `timestampId`: related measurement Unix msec timestamp (if any)</span><br/><span>* `notificationType`: The textual representation of the notification type.</span><br/><span></span><br/></div>

| Field | Ordinal | Type | Label | Description |
|------------------|---------|------------------|----------|--------------------------------------------------------------------------------------|
Expand Down
57 changes: 57 additions & 0 deletions docs/topology.proto.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Package: grid.v1

<div class="comment"><span><!-- markdownlint-disable --></span><br/><span>Messages to support topology data exchange in the platform.</span><br/><span></span><br/></div>

## Imports

| Import | Description |
|--------|-------------|



## Options

| Name | Value | Description |
|------------|-----------|-------------|
| go_package | ./grid/v1 | |




### Topology Diagram

```mermaid
classDiagram
direction LR
%% A topology computed information.
%% Headers used in rabbitMQ:
%% * `id`: id of the `Topology`
%% * `type`: always `Topology`
%% * `producerId`: the id of the producer (e.g. a PMU) linked to the dataset.
%% * `timestampId`: related measurement Unix msec timestamp (if any)
%% * `subnetworkId`: the sub network id for which the topology was computed
%%
class Topology {
+ uint64 createdAt
+ bytes tp
}
```

## Message: Topology
<div style="font-size: 12px; margin-top: -10px;" class="fqn">FQN: grid.v1.Topology</div>

<div class="comment"><span>A topology computed information.</span><br/><span>Headers used in rabbitMQ:</span><br/><span>* `id`: id of the `Topology`</span><br/><span>* `type`: always `Topology`</span><br/><span>* `producerId`: the id of the producer (e.g. a PMU) linked to the dataset.</span><br/><span>* `timestampId`: related measurement Unix msec timestamp (if any)</span><br/><span>* `subnetworkId`: the sub network id for which the topology was computed</span><br/><span></span><br/></div>

| Field | Ordinal | Type | Label | Description |
|-----------|---------|--------|-------|-------------------------------------------------------------------|
| createdAt | 1 | uint64 | | The time of creation of the topology data (Unix msec timestamp). |
| tp | 2 | bytes | | The TP profile file serialized as bytes. |




<!-- Created by: Proto Diagram Tool -->
<!-- https://github.com/GoogleCloudPlatform/proto-gen-md-diagrams -->
Loading

0 comments on commit a3998ef

Please sign in to comment.