def __init__(self, transport): transport.log("[market] Initializing") # for now we have the id in the transport self._myself = transport._myself self._peers = transport._peers self._transport = transport self.query_ident = None self.reputation = Reputation(self._transport) self.orders = Orders(self._transport) # if something comes in, store it: self.nicks = {} self.pages = {} # register callbacks for incoming events transport.add_callback('peer', self.on_peer) transport.add_callback('query_page', self.on_query_page) transport.add_callback('page', self.on_page) transport.add_callback('negotiate_pubkey', self.on_negotiate_pubkey) transport.add_callback('response_pubkey', self.on_response_pubkey) self.load_page() # send something transport.send(shout({'text': 'xxxxx'}))
def __init__(self, transport): transport.log("[Market] Initializing") # for now we have the id in the transport self._myself = transport._myself self._peers = transport._peers self._transport = transport self.query_ident = None self.reputation = Reputation(self._transport) self.orders = Orders(self._transport) # TODO: Persistent storage of nicknames and pages self.nicks = {} self.pages = {} # Register callbacks for incoming events transport.add_callback('peer', self.on_peer) transport.add_callback('query_page', self.on_query_page) transport.add_callback('page', self.on_page) transport.add_callback('negotiate_pubkey', self.on_negotiate_pubkey) transport.add_callback('proto_response_pubkey', self.on_response_pubkey) self.load_page() # Send Market Shout transport.send(shout({'text': 'Market Initialized'}))
def __init__(self, transport, node, store_file): self._log = logging.getLogger(self.__class__.__name__) self._log.info("Initializing") # for now we have the id in the transport self._myself = transport._myself self._peers = transport._peers self._transport = transport self.query_ident = None self.reputation = Reputation(self._transport) self.orders = Orders(self._transport) self.order_entries = self.orders._orders # TODO: Persistent storage of nicknames and pages self.nicks = {} self.pages = {} # store file self.store_file = store_file # assign Entangled Node to global self.node = node # Connect to database MONGODB_URI = 'mongodb://localhost:27017' _dbclient = MongoClient() self._db = _dbclient.openbazaar print type(self._db) self.settings = self._db.settings.find_one() welcome = True if self.settings: if 'welcome' in self.settings.keys() and self.settings['welcome']: welcome = False else: # creates the settings collection if it does not already exist # self.settings = self._db.create_collection('settings') pass # Register callbacks for incoming events transport.add_callback('query_myorders', self.on_query_myorders) transport.add_callback('peer', self.on_peer) transport.add_callback('query_page', self.on_query_page) transport.add_callback('page', self.on_page) transport.add_callback('negotiate_pubkey', self.on_negotiate_pubkey) transport.add_callback('proto_response_pubkey', self.on_response_pubkey) # loads the page in from memory self.load_page(welcome) # stored the page in the DHT once the reactor has been given time to startup and the entangled node has refreshed delay = 1.0 reactor.callLater(delay, self.store_page)
def __init__(self, transport): # Current self._transport = transport self._dht = transport._dht self._market_id = self._transport._market_id self._myself = self._transport._myself self._peers = self._dht._activePeers # Legacy for now self.query_ident = None self.reputation = Reputation(self._transport) self.orders = Orders(self._transport) self.order_entries = self.orders._orders self.nicks = {} self.pages = {} self._log = logging.getLogger( '[%s] %s' % (self._market_id, self.__class__.__name__)) self._log.info("Loading Market %s" % self._market_id) MONGODB_URI = 'mongodb://localhost:27017' _dbclient = MongoClient() self._db = _dbclient.openbazaar self.settings = self._transport.settings welcome = True if self.settings: if 'welcome' in self.settings.keys() and self.settings['welcome']: welcome = False # Register callbacks for incoming events self._transport.add_callback('query_myorders', self.on_query_myorders) self._transport.add_callback('peer', self.on_peer) self._transport.add_callback('query_page', self.on_query_page) self._transport.add_callback('page', self.on_page) self._transport.add_callback('negotiate_pubkey', self.on_negotiate_pubkey) self._transport.add_callback('proto_response_pubkey', self.on_response_pubkey) self.load_page(welcome)
def __init__(self, transport): self._log = logging.getLogger(self.__class__.__name__) self._log.info("Initializing") # for now we have the id in the transport self._myself = transport._myself self._peers = transport._peers self._transport = transport self.query_ident = None self.reputation = Reputation(self._transport) self.orders = Orders(self._transport) self.order_entries = self.orders._orders # TODO: Persistent storage of nicknames and pages self.nicks = {} self.pages = {} # Connect to database MONGODB_URI = 'mongodb://localhost:27017' _dbclient = MongoClient() self._db = _dbclient.openbazaar self.settings = self._db.settings.find_one() welcome = True if self.settings: if 'welcome' in self.settings.keys() and self.settings['welcome']: welcome = False # Register callbacks for incoming events transport.add_callback('query_myorders', self.on_query_myorders) transport.add_callback('peer', self.on_peer) transport.add_callback('query_page', self.on_query_page) transport.add_callback('page', self.on_page) transport.add_callback('negotiate_pubkey', self.on_negotiate_pubkey) transport.add_callback('proto_response_pubkey', self.on_response_pubkey) self.load_page(welcome)
def __init__(self, transport): self._log = logging.getLogger(self.__class__.__name__) self._log.info("Initializing") # for now we have the id in the transport self._myself = transport._myself self._peers = transport._peers self._transport = transport self.query_ident = None self.reputation = Reputation(self._transport) self.orders = Orders(self._transport) self.order_entries = self.orders._orders # TODO: Persistent storage of nicknames and pages self.nicks = {} self.pages = {} # Connect to database MONGODB_URI = 'mongodb://localhost:27017' _dbclient = MongoClient() self._db = _dbclient.openbazaar # Register callbacks for incoming events transport.add_callback('query_myorders', self.on_query_myorders) transport.add_callback('peer', self.on_peer) transport.add_callback('query_page', self.on_query_page) transport.add_callback('page', self.on_page) transport.add_callback('negotiate_pubkey', self.on_negotiate_pubkey) transport.add_callback('proto_response_pubkey', self.on_response_pubkey) self.load_page() # Send Market Shout transport.send(shout({'text': 'Market Initialized'}))
import numpy as np from image.image import Drawer from pd import Game, Player, SIZE, NSWAPS, DO_REP from reputation import Reputation import random drawer = Drawer(magnify=3) rep = Reputation(DO_REP) def swap(players, p1, p2, x1, y1, x2, y2): players[x1][y1] = p2 players[x2][y2] = p1 return players if __name__ == "__main__": players = np.random.rand(SIZE, SIZE) players = [[Player(random.random()) for _ in range(SIZE)] for _ in range(SIZE)] game = Game(rep=rep) N = 0 while True: ### Reporting and drawing ### N += 1 # reports iteration number and average strategy (degree of cooperation) print( "step: ", N, "Total Cooperation: ", sum(map(sum, [[p.strat for p in _row] for _row in players])) / (SIZE**2))