亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dvd-server,v

?? Perfession Linux Programming examples
??
?? 第 1 頁 / 共 3 頁
字號:
head	1.6;
access;
symbols;
locks
	cbbrowne:1.6; strict;
comment	@# @;


1.6
date	2000.06.25.05.27.30;	author cbbrowne;	state Exp;
branches;
next	1.5;

1.5
date	2000.06.25.02.29.53;	author cbbrowne;	state Exp;
branches;
next	1.4;

1.4
date	2000.06.24.03.27.58;	author cbbrowne;	state Exp;
branches;
next	1.3;

1.3
date	2000.06.21.05.18.05;	author cbbrowne;	state Exp;
branches;
next	1.2;

1.2
date	2000.06.21.01.20.28;	author cbbrowne;	state Exp;
branches;
next	1.1;

1.1
date	2000.06.19.06.19.06;	author cbbrowne;	state Exp;
branches;
next	;


desc
@@


1.6
log
@Sundry updates...
@
text
@#!/usr/bin/env python 
import CORBA, sys, regex, string, random, time, shelve, bsddb, os 
from string import split, strip, joinfields
from random import randint
from time import localtime, strftime, time
###  Connect Associative arrays to Files
SHDISKS=bsddb.btopen("disks.db", "c")
SHMEMBERS=bsddb.btopen("members.db", "c")
SHRENTALS=bsddb.btopen("rentals.db", "c")
SHRESERVATIONS=bsddb.btopen("reservations.db", "c")
SHTITLES=bsddb.btopen("titles.db", "c")

class SETUPCOUNTERS:
    def maxforall(self):
	self.maxfordisks()
	self.maxformembers()
	self.maxfortitles()
    def maxfordisks(self):
	if DBMAX.has_key("disks"):
	    max = DBMAX["disks"]
	else:
	    max = 1
	try:
	    i=SHDISKS.first()
	    while i != None:
		iint = string.atoi(i)
		if iint > max:
		    max=iint+1
		i=SHDISKS.next(i)
	except:
	    DBMAX["disks"] = max
    def maxformembers(self):
	if DBMAX.has_key("members"):
	    max = DBMAX["members"]
	else:
	    max = 1    
	try:
	    i=SHMEMBERS.first()
	    while i != None:
		iint = string.atoi(i)
		if iint > max:
		    max=iint+1
		i=SHMEMBERS.next(i)
	except:
	    DBMAX["members"] = max
    def maxfortitles(self):
	if DBMAX.has_key("titles"):
	    max = DBMAX["titles"]
	else:
	    max = 1
	try:
	    i=SHTITLES.first()
	    while i != None:
		iint = string.atoi(i)
		if iint > max:
		    max=iint+1
		i=SHTITLES.next(i)
	except:
	    DBMAX["titles"] = max

### Now, for utilities...
def idtostring (id):
    return "%d" % id

uname = os.uname()
hostname = uname[1]
def logit(type, info):
    try:
	LOGORB.addlog(LOG.loginfo(hostname=hostname, 
				  userid="%d" % os.getuid(),
				  application="dvd-server",
				  messagetype=type,
				  shortmessage=info))
    except: 
	print "logging server broken!"
### Initialization of non-ORB stuff...
FACTORYOBJECT = {}
DBMAX = {}
ERRNDICT = {
     0 : "DVD_SUCCESS"             ,
    -1 : "DVD_ERR_NO_FILE"         ,
    -2 : "DVD_ERR_BAD_TABLE"       ,
    -3 : "DVD_ERR_NO_MEMBER_TABLE" ,
    -4 : "DVD_ERR_BAD_MEMBER_TABLE",
    -5 : "DVD_ERR_BAD_TITLE_TABLE" ,
    -6 : "DVD_ERR_BAD_DISK_TABLE"  ,
    -7 : "DVD_ERR_BAD_SEEK"        ,
    -8 : "DVD_ERR_NULL_POINTER"    ,
    -9 : "DVD_ERR_BAD_WRITE"       ,
    -10 : "DVD_ERR_BAD_READ"       ,
    -11 : "DVD_ERR_NOT_FOUND"      ,
    -12 : "DVD_ERR_NO_MEMORY"      ,
    -13 : "DVD_ERR_BAD_RENTAL_TABLE" ,
    -14 : "DVD_ERR_BAD_RESERVE_TABLE" }

ERRMSGDICT = {
    "DVD_SUCCESS" : "no error",
    "DVD_ERR_NO_FILE" : "cannot open file",
    "DVD_ERR_BAD_TABLE" : "corrupt table file",
    "DVD_ERR_NO_MEMBER_TABLE" : "no member table",
    "DVD_ERR_BAD_MEMBER_TABLE" : "corrupt member table",
    "DVD_ERR_BAD_TITLE_TABLE" : "corrupt title table",
    "DVD_ERR_BAD_DISK_TABLE" : "corrupt disk table",
    "DVD_ERR_BAD_RENTAL_TABLE" : "corrupt rental table",
    "DVD_ERR_BAD_RESERVE_TABLE" : "corrupt reserve table",
    "DVD_ERR_BAD_SEEK" : "cannot seek in file",
    "DVD_ERR_NULL_POINTER" : "null data pointer",
    "DVD_ERR_BAD_WRITE" : "cannot write to file",
    "DVD_ERR_BAD_READ" : "cannot read file",
    "DVD_ERR_NOT_FOUND" : "no match found",
    "DVD_ERR_NO_MEMORY" : "out of memory"}


SETUP=SETUPCOUNTERS()
SETUP.maxforall()

class FACTORY:
    def UTILITIESFactory(self):
	try:
	    return FACTORYOBJECT["utilities"]
	except:
	    logit("Factory", "Create Utility Interface")
	    new_instance = POA.DVD.UTILITIES(UTILITIES())
	    poa.activate_object(new_instance)
	    FACTORYOBJECT["utilities"] = poa.servant_to_reference(new_instance)
	    return FACTORYOBJECT["utilities"]
    def MEMBERSHIPFactory(self):
	try:
	    return FACTORYOBJECT["membership"]
	except:
	    logit("Factory", "Create Membership Interface")
	    new_instance = POA.DVD.MEMBERSHIP(MEMBERSHIP())
	    poa.activate_object(new_instance)
	    FACTORYOBJECT["membership"] = poa.servant_to_reference(new_instance)
	    return FACTORYOBJECT["membership"]
    def TITLINGFactory(self):
	try:
	    return FACTORYOBJECT["titling"]
	except:
	    logit("Factory", "Create Titling Interface")
	    new_instance = POA.DVD.TITLING(TITLING())
	    poa.activate_object(new_instance)
	    FACTORYOBJECT["titling"] = poa.servant_to_reference(new_instance)
	    return FACTORYOBJECT["titling"]
    def DISKSFactory(self):
	try:
	    return FACTORYOBJECT["disks"]
	except:
	    logit("Factory", "Create Disks Interface")
	    new_instance = POA.DVD.DISKS(DISKS())
	    poa.activate_object(new_instance)
	    FACTORYOBJECT["disks"] = poa.servant_to_reference(new_instance)
	    return FACTORYOBJECT["disks"]
    def RENTALFactory(self):
	try:
	    return FACTORYOBJECT["rentals"]
	except:
	    logit("Factory", "Create Rental Interface")
	    new_instance = POA.DVD.RENTAL(RENTAL())
	    poa.activate_object(new_instance)
	    FACTORYOBJECT["rentals"] = poa.servant_to_reference(new_instance)
	    return FACTORYOBJECT["rentals"]
    def RESERVATIONSFactory(self):
	try:
	    return FACTORYOBJECT["reservations"]
	except:
	    logit("Factory", "Create Reservations Interface")
	    new_instance = POA.DVD.RESERVATIONS(RESERVATIONS())
	    poa.activate_object(new_instance)
	    FACTORYOBJECT["reservations"] = poa.servant_to_reference(new_instance) 
	    return FACTORYOBJECT["reservations"]

### Functions to pack/unpack the DBM file information
def destringizereservationinfo(sres):
    rout=DVD.RESERVATIONS.reservation
    (mbr, ttl, dd)=string.split(sres, "\\")
    rout.memberid=string.atoi(mbr)
    rout.titleid=string.atoi(ttl)
    rout.due=dd
    return rout
def stringizereservation(res):
    return string.join(("%d"%res.memberid, "%d"%res.titleid, res.due), "\\")
def destringizerentinfo(srental):
    rout=DVD.RENTAL.rentinfo
    (dsk, mbr, dd) = string.split(srental, "\\")
    rout.diskid=string.atoi(dsk)
    rout.memberid=string.atoi(mbr)
    rout.due=dd
    return rout
def stringizerentinfo(rrec):
    return string.join(("%d"%rrec.diskid, "%d"%rrec.memberid, rrec.due), "\\")
def destringizedisk(sdisk):
    disk=DVD.DISKS.dvddisks()
    (sd, st) = string.split(sdisk, "\\")
    disk.diskid = string.atoi(sd)
    disk.titleid = string.atoi(st)
    return disk
def stringizedisk(disk):
    return string.join(("%d"%disk.diskid, "%d"%disk.titleid), "\\")
def stringizetitle(title):
    return string.join(("%d" % title.titleid, title.titletext, title.asin, title.director, title.genre, title.classification, title.actor1, title.actor2, title.releasedate, title.rentalcost, title.image), "\\")
def destringizetitle(stitle):
    title=DVD.TITLING.dvdtitles()
    (mttl, title.titletext, title.asin, title.director, title.genre, title.classification, title.actor1, title.actor2, title.releasedate, title.rentalcost, title.image) = string.split(stitle, "\\")
    title.titleid=string.atoi(mttl)
    return title
	
def stringizemember(member):
    return string.join(("%d" % member.memberid, member.memberno,
			member.title, member.fname, member.lname,
			member.houseflatref, member.address1,
			member.address2, member.town, member.state,
			member.phone, member.zipcode), "\\")
def destringizemember(smember):
    member=DVD.MEMBERSHIP.storemembers()
    (mid, member.memberno, member.title, member.fname, member.lname,
     member.houseflatref, member.address1, member.address2,
     member.town, member.state, member.phone, member.zipcode) = string.split(smember, "\\")  
    member.memberid=string.atoi(mid)
    return member

class MEMBERSHIP:
    def set (self, recordtoupdate):
	logit("Membership", "Set contents for %d" %
	      recordtoupdate.memberid) 
	SHMEMBERS[idtostring(recordtoupdate.memberid)]= stringizemember(recordtoupdate)
	SHMEMBERS.sync()
    def get (self, memberid):
	try:
	    record=SHMEMBERS[idtostring(memberid)]
	except:
	    logit("Membership", "Failure of get() contents for member %d" % memberid)
	    print "Couldn't get member", memberid
	    raise DVD.MEMBERSHIP.NOSUCHMEMBER
	logit("Membership", "Success of get() contents for member %d"
	      % memberid) 
	return destringizemember(record)
    def delete (self, memberid):
	try:
	    del SHMEMBERS[idtostring(memberid)]
	    logit("Membership", "delete contents for %d" % memberid)
	    SHMEMBERS.sync()
	except:
	    raise DVD.MEMBERSHIP.NOSUCHMEMBER
    def create (self, recordtoadd):
	lastid = DBMAX["members"]
	lastid = lastid + 1
	logit("Membership", "Create new member record - %d" % lastid)
	DBMAX["members"] = lastid
	recordtoadd.memberid = lastid
	recordtoadd.memberno = "%d" % lastid
	SHMEMBERS[idtostring(lastid)]=stringizemember(recordtoadd)
	SHMEMBERS.sync()
	logit("Membership", "Create new member  for %d" % lastid)
	return lastid
    def search (self, lname):
	rseq = []
	try:
	    (key,value)=SHMEMBERS.first()
	    while 1 == 1:
		lst=string.split(value, "\\")
		surname=lst[4]
		if string.upper(surname) == string.upper(lname):
		    rseq.append (string.atoi(key))
		(key,value)=SHMEMBERS.next()
	except:
	    done = ""
	logit("Membership", "Search for %s" % lname)
	rseq.sort()
	return rseq
    def idfromnumber (self, memberno):
	logit("Membership", "id-to-number for %s" % memberno)
	try:
	    (key,value)=SHMEMBERS.first()
	    while 1 == 1:
		lst = string.split(value, "\\")
		no = lst[1]
		if no == memberno:
		    return string.atoi(key)
		(key,value) = SHMEMBERS.next()
	except:
	    raise DVD.MEMBERSHIP.NOSUCHMEMBER
class TITLING:
    def set (self, recordtoupdate):
	try:
	    SHTITLES[idtostring(recordtoupdate.titleid)]= stringizetitle(recordtoupdate) 
	    SHTITLES.sync()
	except:
	    logit("TITLING", "Failure of set() contents for title %d"
		  % recordtoupdate.titleid) 
	logit("TITLING", "Success of set() contents for title %d" %
	      recordtoupdate.titleid) 
    def get (self, titleid):
	try:
	    record=SHTITLES[idtostring(titleid)]
	except:
	    logit("TITLING", "failure of get() contents for title %d"
		  % titleid) 
	    raise DVD.TITLING.NOSUCHTITLE
	logit("TITLING", "Success of get() contents for title %d" % titleid)
	return destringizetitle(record)
    def delete (self, titleid):
	try:
	    del SHTITLES[idtostring(titleid)]
	    SHTITLES.sync()
	    logit("Titling", "delete contents for %d" % titleid)
	except:
	    raise DVD.TITLING.NOSUCHTITLE
    def create (self, recordtoadd):
	lastid = DBMAX["titles"]
	lastid = lastid + 1
	logit("Titling", "Create new title record - %d" % lastid)
	DBMAX["titles"] = lastid
	recordtoadd.memberid = lastid
	SHTITLES[idtostring(lastid)]=stringizetitle(recordtoadd)
	SHTITLES.sync()
	return lastid
    def search (self, title, name):
	rseq = []
	try:
	    (key,value)=SHTITLES.first()
	    while 1 == 1:
		lst=string.split(value, "\\")
		titletext=lst[1]
		director=lst[3]
		actor1=lst[6]
		actor2=lst[7]
		keep="NO"
		if string.upper(director) == string.upper(name):
		    keep = "YES"
		if string.upper(actor1) == string.upper(name):
		    keep = "YES"
		if string.upper(actor2) == string.upper(name):
		    keep = "YES"
		if string.upper(titletext) == string.upper(title):
		    keep = "YES"
		if keep == "YES":
		    rseq.append (string.atoi(key))
		(key,value)=SHTITLES.next()
	except:
	    done = ""
	logit("Titling", "Search for %s" % title)
	#rseq.sort(lambda x, y: x-y)
	rseq.sort()
	return rseq
class DISKS:
    def set (self, recordtoupdate):
	try:
	    SHDISKS[idtostring(recordtoupdate.diskid)]= stringizedisk(recordtoupdate)
	    SHDISKS.sync()
	except:
	    logit("DISKS", "Failure to set %d" % recordtoupdate.diskid)
	logit("DISKS", "Success of set() contents for disk %d" % recordtoupdate.diskid)
    def get (self, diskid):
	try:
	    record=SHDISKS[idtostring(diskid)]

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美高清视频一二三区 | 色久优优欧美色久优优| 国产精品素人一区二区| 国产精品久久久久久妇女6080| 日日骚欧美日韩| 免费在线视频一区| 色噜噜久久综合| 欧美日精品一区视频| 亚洲成人动漫在线观看| 一本色道久久综合亚洲aⅴ蜜桃| 欧美一区二区人人喊爽| 国产精一区二区三区| 国产成人精品一区二| 日韩三级视频中文字幕| 5858s免费视频成人| 亚洲人成伊人成综合网小说| 丁香五精品蜜臀久久久久99网站 | 老司机一区二区| 欧美日韩一区二区三区免费看| 成人免费在线观看入口| 99久久亚洲一区二区三区青草| 日韩免费视频线观看| 国产一区二区三区综合| 日韩一级片在线观看| 国产在线国偷精品免费看| 日韩精品在线一区二区| a4yy欧美一区二区三区| 一区二区三区精品在线| 日韩精品一区二区三区老鸭窝| 国产精品一区三区| 午夜精品成人在线| 国产精品丝袜91| 日韩一区二区三区在线观看 | 国产精品99久久久久久宅男| 久久伊人中文字幕| 91精品国产色综合久久ai换脸| 一区二区三区精品| 久久噜噜亚洲综合| 精品日韩成人av| 91精品国产综合久久精品性色| 韩国毛片一区二区三区| 亚洲成人av免费| 亚洲欧洲无码一区二区三区| 久久亚洲一区二区三区四区| 91精品免费在线观看| 欧美精三区欧美精三区| 99久久精品情趣| 成人综合在线网站| 国产mv日韩mv欧美| 丁香婷婷综合五月| 国产91丝袜在线播放0| 国产美女久久久久| 不卡一区在线观看| 国产九色精品成人porny| 国产凹凸在线观看一区二区| 五月综合激情婷婷六月色窝| 日韩高清不卡一区二区三区| 亚洲mv在线观看| 麻豆成人av在线| 97久久久精品综合88久久| 91国产精品成人| 欧美三级午夜理伦三级中视频| 成人永久aaa| 精品少妇一区二区三区免费观看 | 久久看人人爽人人| 精品99久久久久久| 亚洲视频狠狠干| 亚洲人成网站色在线观看| 日本午夜精品一区二区三区电影 | 欧美精品丝袜久久久中文字幕| 国产精品欧美一区二区三区| 欧美一区二区成人| 综合自拍亚洲综合图不卡区| 国产亚洲欧美激情| 亚洲国产成人一区二区三区| 中文字幕一区二区三区不卡在线| 亚洲美女屁股眼交| 国产成人精品综合在线观看| 色哟哟一区二区三区| 欧美大片在线观看一区| 亚洲四区在线观看| 国产福利视频一区二区三区| 欧美日本韩国一区| 日韩欧美国产1| 国产福利一区二区| 欧美日韩欧美一区二区| 久久色成人在线| 蓝色福利精品导航| 色94色欧美sute亚洲线路一ni | 国产三级欧美三级日产三级99| 国产精品黄色在线观看| 国产一区二区三区免费观看| 欧美群妇大交群的观看方式 | 国产最新精品精品你懂的| 欧美草草影院在线视频| 日韩va欧美va亚洲va久久| 国产成人免费视| 亚洲色图欧洲色图婷婷| 在线欧美小视频| 成人欧美一区二区三区黑人麻豆| 日韩精品一区二区三区老鸭窝| 一区二区三区资源| 欧美日韩国产影片| 寂寞少妇一区二区三区| 中文字幕高清一区| 懂色av一区二区三区蜜臀| 麻豆久久久久久久| 中文在线免费一区三区高中清不卡| 国产91精品一区二区麻豆网站| 中文字幕一区在线观看视频| 欧美日韩亚洲国产综合| 国产大陆精品国产| 亚洲午夜久久久久久久久久久| 久久综合视频网| 欧美疯狂性受xxxxx喷水图片| 高清不卡一区二区| 亚洲国产精品一区二区尤物区| 国产日产欧美一区| 26uuu欧美| 91丝袜美腿高跟国产极品老师 | 91国偷自产一区二区开放时间| 中文字幕va一区二区三区| 欧美精品日韩精品| 一本到高清视频免费精品| 蜜臀av亚洲一区中文字幕| 亚洲欧美日韩久久精品| 国产精品久久夜| 在线观看av不卡| 激情国产一区二区 | 欧美丰满一区二区免费视频| 国产精品99久| 久久99蜜桃精品| 国产精品亚洲人在线观看| 春色校园综合激情亚洲| 粉嫩欧美一区二区三区高清影视| 亚洲激情自拍偷拍| 麻豆91精品视频| 日本不卡一二三| 免费av网站大全久久| 亚洲综合免费观看高清在线观看| 欧美videossexotv100| 欧美变态tickling挠脚心| 欧美精品1区2区3区| 91精品国产色综合久久| 日本一区二区久久| 亚洲电影中文字幕在线观看| 日本亚洲三级在线| 大美女一区二区三区| 国产激情精品久久久第一区二区 | 久久久久国产精品麻豆| 在线精品视频免费观看| 欧美一区国产二区| 精品日韩欧美一区二区| 国产精品网站在线播放| 一区二区欧美视频| 免费观看日韩av| 91福利在线看| 日韩视频永久免费| 国产精品久久久久影院色老大| 亚洲国产岛国毛片在线| 国产亚洲一区二区在线观看| 亚洲激情五月婷婷| 成人美女视频在线观看| 精品国产乱码久久久久久图片| 精品国产乱码久久久久久久久| 国产精品乱码久久久久久| 日日夜夜精品视频天天综合网| 成人黄色综合网站| 日本一区二区在线不卡| 日韩高清不卡在线| 欧美卡1卡2卡| 久久精品理论片| 日韩欧美一级精品久久| 日本不卡免费在线视频| 美女诱惑一区二区| 在线不卡欧美精品一区二区三区| 一区二区三区资源| 极品少妇一区二区| 久久久噜噜噜久久人人看| 精品制服美女丁香| 91国内精品野花午夜精品 | 国产黄色精品网站| 国产精品麻豆欧美日韩ww| www.色精品| 一区二区三区在线高清| 欧美日韩电影在线播放| 国产不卡视频一区| 亚洲激情中文1区| 欧美日韩中文字幕精品| 激情综合网av| 亚洲欧美另类小说| 91.com视频| 在线观看国产精品网站| 播五月开心婷婷综合| 亚洲午夜av在线| 国产欧美日产一区| 2020国产精品| 欧美日本国产一区| 69精品人人人人| 成人一道本在线|