Page History
...
For at NAS2 skal kunne modtage adviseringer på et Topic skal dette oprettes i Kafka og i databasen. For at give tilladelse til at der kan oprettes abonnementer og afhentes adviseringer på et Topic, skal der desuden oprettes et Topic Access i databasen.
Opret Topic
Først oprettes Kafka Topic via følgende kommando:
...
Code Block | ||
---|---|---|
| ||
INSERT INTO TopicMapping (topic, internal_topic) VALUES ('http://www.dkma.dk/medicinecard/xml.schema/2012/06/01:MedicineCard', 'dk.nsp.bo.nas.fmk.MedicineCard'); |
...
Opret Topic
...
Access
Topic access oprettes med en identifier, der angiver adgangen til et specifikt topic. Identifier kan indeholde 'ALL', et cvr-nummer på formen 'CVR:XXXXXXXX', eller et CVR-RID, CVR-UID eller CVR-FID på formen: 'CVR:XXXXXXXX-XID:XXXXXXXX'.
Eksempler:
- 'CVR:46837428'
- 'CVR:46837428-FID:92421325'
Topic Access oprettes i databasen på følgende måde:
Code Block | ||
---|---|---|
| ||
INSERT INTO topic_access
(topic, identifier, comment)
VALUES
('http://www.dkma.dk/medicinecard/xml.schema/2012/06/01:MedicineCard', 'ALL', 'SDS-4393: topic access oprettet'); |
Lukke for et Topic
For at lukke for nye adviseringer til et Topic opdateres rækken i "TopicMapping" på følgende måde:
Code Block | ||
---|---|---|
| ||
UPDATE TopicMapping SET active = false where topic ="http://www.dkma.dk/medicinecard/xml.schema/2012/06/01:MedicineCard"; |
Slette et Topic
For at slette et topic bør det først være inaktivt i en periode således at der ikke kan afleveres nye data og modtagere kan nå at afhente alle deres adviseringer. Derefter skal nedenstående udføres.
Nedenstående sletter topic fra NAS databasen.
Code Block | ||
---|---|---|
| ||
delete from TopicMapping where topic = 'http://www.dkma.dk/medicinecard/xml.schema/2012/06/01:MedicineCard'; |
Nedenstående sletter topic i kafka.
Code Block |
---|
bin/kafka-topics.sh --delete --bootstrap-server kafka-host:port --topic dk.nsp.nas.fmk.MedicineCard |
Ændre Topic Access
Hvis der skal ændres på hvem, der har lov til at tilgå et topic, skal det opdates i Topic Access i databasen.
Tilføj en adgang til et Topic
Der kan være flere rækker i databasen med adgange på cvr eller cvr-Xid. For at give en ny tilladelse oprettes et nyt Topic Access på følgende måde:
Code Block | ||
---|---|---|
| ||
INSERT INTO topic_access
(topic, identifier, comment)
VALUES
('http://www.dkma.dk/medicinecard/xml.schema/2012/06/01:MedicineCard', 'CVR:46837428', 'SDS-4393: ny tilladelse oprettet'); |
Ændre tilladelse fra 'ALL' til cvr eller cvr-Xid
Hvis et Topic ikke længere skal være tilgængeligt for alle, er det vigtigt at Topic Access med identifier 'ALL' ikke længere findes i databasen. Dette ændres For at lukke for nye adviseringer til et Topic opdateres rækken i "TopicMapping" på følgende måde:
Code Block | ||
---|---|---|
| ||
UPDATE TopicMappingtopic_access SET active = false where identifier = 'CVR:46837428', comment = 'SDS-4393: Topic Access indskrænket' WHERE topic =" 'http://www.dkma.dk/medicinecard/xml.schema/2012/06/01:MedicineCard"; |
Slette et Topic
For at slette et topic bør det først være inaktivt i en periode således at der ikke kan afleveres nye data og modtagere kan nå at afhente alle deres adviseringer. Derefter skal nedenstående udføres.
.schema/2012/06/01:MedicineCard'; |
Slette en adgang til et Topic
Hvis en adgang til et Topic skal slettes, gøres det på følgende måde:Nedenstående sletter topic fra NAS databasen.
Code Block | ||
---|---|---|
| ||
deleteDELETE fromFROM TopicMapping wheretopic_access WHERE topic = 'http://www.dkma.dk/medicinecard/xml.schema/2012/06/01:MedicineCard'; |
Nedenstående sletter topic i kafka.
Code Block |
---|
bin/kafka-topics.sh --delete --bootstrap-server kafka-host:port --topic dk.nsp.nas.fmk.MedicineCard AND identifier = 'CVR:46837428'; |
Udvide antallet af partitioner
...