Mercurial > libervia-pubsub
view db/pubsub.sql @ 153:753b8432460f
Work towards JEP-0060 1.8
- Remove subscription information from <affiliations/> result.
- Add handling of <subscriptions/> entity use case.
- Make <subscribe/> return <subscription/> instead of <entity/>.
- Move <purge/> and <delete/> to owner namespace.
- Don't use 'self' in interfaces.
author | Ralph Meijer <ralphm@ik.nu> |
---|---|
date | Sat, 06 May 2006 19:47:53 +0000 |
parents | f766e46dce0f |
children | 4aa29b1a8c67 |
line wrap: on
line source
create table entities ( id serial primary key, jid text not null unique ); create table nodes ( id serial primary key, node text not null unique, persistent boolean not null default true, deliver_payload boolean not null default true ); create table affiliations ( id serial primary key, entity_id integer not null references entities on delete cascade, node_id integer not null references nodes on delete cascade, affiliation text not null check (affiliation in ('outcast', 'publisher', 'owner')), unique (entity_id, node_id) ); create table subscriptions ( id serial primary key, entity_id integer not null references entities on delete cascade, resource text, node_id integer not null references nodes on delete cascade, subscription text not null default 'subscribed' check (subscription in ('subscribed', 'pending', 'unconfigured')), unique (entity_id, resource, node_id) ); create table items ( id serial primary key, node_id integer not null references nodes on delete cascade, item text not null, publisher text not null, data text, date timestamp with time zone not null default now(), unique (node_id, item) );