view bin/clientdemo @ 1820:a07f1d87a07f

fix rare update case in /live Ignore-this: 4fa0442f0f8d29e701c2a7635313a048
author drewp@bigasterisk.com
date Fri, 08 Jun 2018 23:12:31 +0000
parents 6fa4288da8a6
children 7772cc48e016
line wrap: on
line source

#!bin/python

import os, sys
sys.path.append(".")
from twisted.internet import reactor
import cyclone.web, cyclone.httpclient, logging
from rdflib import Namespace, Literal, URIRef
from light9 import networking
from rdfdb.patch import Patch
from rdfdb.syncedgraph import SyncedGraph

if __name__ == "__main__":
    logging.basicConfig(level=logging.DEBUG)
    log = logging.getLogger()

    g = SyncedGraph(networking.rdfdb.url, "clientdemo")

    from light9.Submaster import PersistentSubmaster
    sub = PersistentSubmaster(graph=g, uri=URIRef("http://light9.bigasterisk.com/sub/bcools"))

    #get sub to show its updating name, then push that all the way into KC gui so we can see just names refresh in there


    L9 = Namespace("http://light9.bigasterisk.com/")
    def updateDemoValue():
        v = list(g.objects(L9['demo'], L9['is']))
        print "demo value is %r" % v

    g.addHandler(updateDemoValue)

    def adj():
        g.patch(Patch(addQuads=[(L9['demo'], L9['is'], Literal(os.getpid()),
                                 L9['clientdemo'])],
                      delQuads=[]))
    reactor.callLater(2, adj)
    reactor.run()