def __init__(self, uuid, record={}): ServiceBase.__init__(self, uuid, record) self.props = DefaultProperties.instance() self.estate_owner = record.get('estate_owner') self.estate_name = record.get('estate_name') self.estate_id = record.get('estate_id') self.parent_estate_id = record.get('parent_estate_id')
def __init__(self, uuid, record={}): ServiceBase.__init__(self, uuid, record) self.props = DefaultProperties.instance() dbconfig = self.props.getCoreDbConfig() self.exe_name = "OpenSim.exe" # self.exe_args = "--console rest" self.exe_args = "" if ((not 'sim_name' in record) or (not 'sim_location_x' in record) or (not 'sim_location_y' in record) or (not 'estate_id' in record) or (not 'master_avatar_uuid' in record)): raise ServiceError("Region: Invalid Region Information provided") self.regionEntry = None self.sim_uuid = uuid self.estate_id = record['estate_id'] self.syncEstateInfoToEstateId() self.master_avatar_uuid = record['master_avatar_uuid'] self.syncOwnerInfoToMasterAvatarId() self.sim_name = record.get("sim_name") self.set_sim_location(record.get("sim_location_x"), record.get("sim_location_y")) if ('slot_number' in record): self.slot_number = int(record.get('slot_number')) self.slot_directory = provision.GetSlotDirectory(self.slot_number) else: raise ServiceError("Create failed. No Slot Number Specified") rdbHost = GetRdbHost(dbconfig, uuid) if not rdbHost: # no info? that's ok in this case we assign print "RDB server not assigned for {0}, assigning new slot".format(uuid) rdbHost = AssignBestRdbHost(dbconfig, uuid) from inworldz.maestro.RegionHost import RegionHost self.regionHost = RegionHost.instance() self.set_external_host_name(record.get('external_host_name')) self.set_outside_ip(record.get('outside_ip')) self.set_internal_ip_address(record.get('internal_ip_address')) self.set_internal_ip_port(record.get('internal_ip_port')) self.set_allow_alternate_ports(record.get('allow_alternate_ports')) self.set_lastmap_uuid(record.get("lastmap_uuid")) self.set_lastmap_refresh(record.get("lastmap_refresh")) self.set_nonphysical_prim_max(record.get("nonphysical_prim_max")) self.set_physical_prim_max(record.get("physical_prim_max")) self.set_clamp_prim_size(record.get("clamp_prim_size")) self.set_object_capacity(record.get("object_capacity")) self.set_region_product(record.get("region_product")) self.set_remoteadmin_url(record.get("remoteadmin_url")) self.remoteadmin_session = Session(self.get_remoteadmin_url()) self.remoteadmin_sessionid = None
def __init__(self, uuid, record={}): ServiceBase.__init__(self, uuid, record) self.props = DefaultProperties.instance() if ('user_id' in record): self.user_id = str(record.get('user_id')) else: raise ServiceError("Create failed. No user id specified") self.first_name = str(record['first_name'] if 'first_name' in record else "") self.last_name = str(record['last_name'] if 'last_name' in record else "")
def __init__(self, uuid, record={}): ServiceBase.__init__(self, uuid, record) self.props = DefaultProperties.instance() self.exe_name = "unknown" self.exe_args = "" self.remoteadmin_url = None self.remoteadmin_session = None self.remoteadmin_sessionid = None from inworldz.maestro.RegionHost import RegionHost self.regionHost = RegionHost.instance() self.service_basedir = provision.GetServiceBaseDir() self.shouldBeRunning = True
def __init__(self, uuid, record={}): ServiceBase.__init__(self, uuid, record) self.props = DefaultProperties.instance() self.set_maintenance_mode(record.get('maintenance_mode')) self.host_memory = Memory(genuuid.createString()) self.host_disk = Disk(genuuid.createString()) self.host_cpu = Cpu(genuuid.createString()) self.process = Process(genuuid.createString()) self.maxRegionSlots = provision.GetMaxRegionSlots() self.slotBaseDir = provision.GetSlotBaseDir() self.serviceBaseDir = provision.GetServiceBaseDir() self.regions = [] self.regions_lock = threading.RLock()
def getAttrRO(cls): attrs = [ "sim_uuid", "owner_uuid", "master_avatar_first", "master_avatar_last", "sim_location_x", "sim_location_y", "slot_number", "slot_directory", "name_label", "internal_ip_address", "internal_ip_port", "allow_alternate_ports", "external_host_name", "outside_ip", "lastmap_uuid", "lastmap_refresh", "nonphysical_prim_max", "physical_prim_max", "clamp_prim_size", "object_capacity", "region_product", "remoteadmin_url", "RegionHost", "Estate", "State", "cpu_used_percentage", "memory_used", "thread_count", "handle_count" ] return ServiceBase.getAttrRO() + attrs
def destroy(self): p = provision._findRegionProcess(self.slot_number) if p: raise ServiceError("Cannot destroy a running region") """ Zap the config file """ regionDir = os.path.join(provision.GetSlotDirectory(self.slot_number), "bin", "Regions") configFile = os.path.join(regionDir, self.get_name_label() + ".xml") if (os.path.exists(configFile)): os.remove(configFile) self.regionEntry.unprovision() """ Remove our Entry in the Host """ self.regionHost.region_del(self.get_uuid()) ServiceBase.destroy(self)
def getAttrRO(self): attrs = [ "user_id", "first_name", "last_name", ] return ServiceBase.getAttrRO() + attrs
def getFuncs(self): funcs = [ "create", "FindByEstateID", "FindBySimUUID" ] return ServiceBase.getFuncs() + funcs
def getAttrRO(cls): attrs = [ "Regions", "Memory", "Disk", "Cpu", "Process", "UserService", "MessagingService", "ApertureService", "GridService", "service_base_dir", "slot_base_dir", "max_slots", "Flags" ] return ServiceBase.getAttrRO() + attrs
def getAttrRO(self): attrs = [ "estate_id", "estate_name", "estate_owner", "parent_estate_id" ] return ServiceBase.getAttrRO() + attrs
def getAttrRW(cls): attrs = [ "sim_name", "sim_location", "master_avatar_uuid", "estate_id" ] return ServiceBase.getAttrRW() + attrs
def getMethods(cls): methods = [ "IsSlotProvisioned", "IsSlotFree", "GetSlotDirectory", "GetSlotConfiguration", "ProvisionRegion", "Shutdown", "UpdateRegionToRevision", "UpdateRegionToLatest", "UpdateGridServicesToRevision", "UpdateGridServicesToLatest", "ReconfigureRegion", "ReconfigureGridServices", "RunCommand", "RunCommandAs" ] return ServiceBase.getMethods() + methods
def getMethods(self): methods = [ "IsRunning", "Start", "Shutdown", "Terminate", "ConsoleCommand", "DumpThreadStacks" ] return ServiceBase.getMethods() + methods
def getMethods(cls): methods = [ "destroy", "IsRunning", "Start", "Shutdown", "Terminate", "AssignEstate", "UpdateToRevision", "UpdateToLatest", "Reconfigure", "ConsoleCommand", "RestoreOarBackup", "SaveOarBackup", "Backup", "Restore", "ChangeState", "CopyFileToTransferLocation", "CopyFileFromTransferLocation", "DumpThreadStacks" ] return ServiceBase.getMethods() + methods
def getAttrRO(cls): attrs = [ "this_host", ] return ServiceBase.getAttrRO() + attrs
def getFuncs(self): funcs = [ ] return ServiceBase.getFuncs() + funcs
def getAttrRO(self): attrs = [ "RegionHost", "remoteadmin_url" ] return ServiceBase.getAttrRO() + attrs
def getMethods(self): methods = [ "process_list", ] return ServiceBase.getMethods() + methods
def getAttrRW(self): attrs = [] return ServiceBase.getAttrRW() + attrs
def getMethods(self): methods = [] return ServiceBase.getMethods() + methods
def getAttrRW(cls): attrs = [ "maintenance_mode", ] return ServiceBase.getAttrRW() + attrs
def getFuncs(self): funcs = [ "FindByUserID", "FindByName" ] return ServiceBase.getFuncs() + funcs
def __init__(self, uuid, record={}): ServiceBase.__init__(self, uuid, record)
def getMethods(self): methods = [ "AssignRegion", ] return ServiceBase.getMethods() + methods
def getFuncs(self): funcs = ["FindByUserID", "FindByName"] return ServiceBase.getFuncs() + funcs
def getFuncs(cls): funcs = ["GetAvailableReleases"] return ServiceBase.getFuncs() + funcs
def __init__(self, uuid, record={}): ServiceBase.__init__(self, uuid, record) self.props = DefaultProperties.instance() self.thisHost = RegionHost.instance() """ Should lookup and init a proxy for other hosts here also """
def ConsoleCommand(self, command): """ Runs the given console command """ if (not self.IsRunning()): raise ServiceError("ConsoleCommand: Process Not Running") ServiceBase.ConsoleCommand(self, command)
def getMethods(self): methods = [ ] return ServiceBase.getMethods() + methods
def getAttrRO(self): attrs = ["RegionHost", "remoteadmin_url"] return ServiceBase.getAttrRO() + attrs
def getFuncs(self): funcs = [] return ServiceBase.getFuncs() + funcs
def getFuncs(self): funcs = ["create", "FindByEstateID", "FindBySimUUID"] return ServiceBase.getFuncs() + funcs
def getAttrRW(self): attrs = [ ] return ServiceBase.getAttrRW() + attrs
def getFuncs(cls): funcs = [ "GetAvailableReleases" ] return ServiceBase.getFuncs() + funcs
def getMethods(self): methods = ["cpu_percent", "cpu_times"] return ServiceBase.getMethods() + methods
def getFuncs(cls): funcs = [ "create", "FindByName", ] return ServiceBase.getFuncs() + funcs