示例#1
0
from pyignite import Client

from cache.instance_data import PerperInstanceData
from cache.stream_data import StreamData
from model.state import State
from model.context import Context
from services.serializer import Serializer

serializer = Serializer()
ignite = Client()
ignite.connect('localhost', 10800)
ignite.register_binary_type(StreamData)

instance = PerperInstanceData(ignite, serializer)
state = State(instance, ignite, serializer)
context = Context(instance, None, state, ignite)

context.stream_action()
print("Reading stream")
print(ignite.get_cache_names())
streams_cache = ignite.get_cache("streams")
for el in streams_cache.scan():
    print(el)
示例#2
0
# create indices
for query in [CITY_CREATE_INDEX, LANGUAGE_CREATE_INDEX]:
    client.sql(query)

# load data
for row in COUNTRY_DATA:
    client.sql(COUNTRY_INSERT_QUERY, query_args=row)

for row in CITY_DATA:
    client.sql(CITY_INSERT_QUERY, query_args=row)

for row in LANGUAGE_DATA:
    client.sql(LANGUAGE_INSERT_QUERY, query_args=row)

# examine the storage
result = client.get_cache_names()
print(result)
# [
#     'SQL_PUBLIC_CITY',
#     'SQL_PUBLIC_COUNTRY',
#     'PUBLIC',
#     'SQL_PUBLIC_COUNTRYLANGUAGE'
# ]

city_cache = client.get_or_create_cache('SQL_PUBLIC_CITY')
print(city_cache.settings[PROP_NAME])
# 'SQL_PUBLIC_CITY'

print(city_cache.settings[PROP_QUERY_ENTITIES])
# {
#     'key_type_name': (
示例#3
0
# create indices
for query in [CITY_CREATE_INDEX, LANGUAGE_CREATE_INDEX]:
    client.sql(query)

# load data
for row in COUNTRY_DATA:
    client.sql(COUNTRY_INSERT_QUERY, query_args=row)

for row in CITY_DATA:
    client.sql(CITY_INSERT_QUERY, query_args=row)

for row in LANGUAGE_DATA:
    client.sql(LANGUAGE_INSERT_QUERY, query_args=row)

# examine the storage
result = client.get_cache_names()
print(result)
# [
#     'SQL_PUBLIC_CITY',
#     'SQL_PUBLIC_COUNTRY',
#     'PUBLIC',
#     'SQL_PUBLIC_COUNTRYLANGUAGE'
# ]

city_cache = client.get_or_create_cache('SQL_PUBLIC_CITY')
print(city_cache.settings[PROP_NAME])
# 'SQL_PUBLIC_CITY'

print(city_cache.settings[PROP_QUERY_ENTITIES])
# {
#     'key_type_name': (
示例#4
0
# Writing and Reading from dotnet works
# Finds its own Binary type
# Works with objects and dynamics
# TODO: Move this to samples
# Not sure about subscribing to a stream


def preview(cache):
    print("Size of %s %s" % (cache.name, cache.get_size()))


client = Client()
client.connect('localhost', 10800)
client.register_binary_type(SimpleData)

print(client.get_cache_names())
initial_caches_num = len(client.get_cache_names())

stream_name = None
for cache_name in list(client.get_cache_names()):
    if "DynamicDataStream" in cache_name:
        stream_name = cache_name

if stream_name == None:
    print('Perper stream not started yet')
else:
    simpleDataStream = client.get_or_create_cache(stream_name)

simpleDataStream.put(simpleDataStream.get_size() + 1,
                     SimpleData(name='Goshko', priority=1231, json='test'))