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

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

?? dvd-server.py,v

?? Perfession Linux Programming examples
?? PY,V
?? 第 1 頁 / 共 2 頁
字號:
head	1.1;
access;
symbols;
locks
	cbbrowne:1.1; strict;
comment	@# @;


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


desc
@@


1.1
log
@Initial revision
@
text
@#!/usr/bin/env python 
import CORBA, sys, string, random, time, 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.dwanted=dd
    return rout
def stringizereservation(res):
    return string.join(("%d"%res.memberid, "%d"%res.titleid, res.dwanted), "\\")
def destringizerentinfo(srental):
    rout=DVD.RENTAL.rentinfo
    (dsk, mbr, dd) = string.split(srental, "\\")
    rout.diskid=string.atoi(dsk)
    rout.memberid=string.atoi(mbr)
    rout.drented=dd
    return rout
def stringizerentinfo(rrec):
    return string.join(("%d"%rrec.diskid, "%d"%rrec.memberid, rrec.drented), "\\")
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:

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
极品美女销魂一区二区三区| 亚洲国产日韩a在线播放性色| 亚洲精品一区二区三区香蕉| 久久免费视频一区| 国产精品成人一区二区三区夜夜夜 | 豆国产96在线|亚洲| 97精品超碰一区二区三区| 91视频一区二区三区| 欧美日韩精品一区视频| 欧美va亚洲va| 综合久久久久综合| 日本不卡一区二区三区高清视频| 狠狠色综合播放一区二区| 91浏览器打开| 久久麻豆一区二区| 美国一区二区三区在线播放| jlzzjlzz欧美大全| 久久久亚洲高清| 免费成人在线视频观看| 91在线播放网址| 国产日本欧洲亚洲| 蜜臀91精品一区二区三区| 91在线观看免费视频| xfplay精品久久| 日韩专区在线视频| 日本高清免费不卡视频| 中文字幕亚洲精品在线观看| 久久99国内精品| 欧美精品v日韩精品v韩国精品v| 欧美国产日本韩| 国产成人久久精品77777最新版本| 欧美视频三区在线播放| 夜夜嗨av一区二区三区中文字幕| 粉嫩久久99精品久久久久久夜| 51久久夜色精品国产麻豆| 亚洲制服丝袜av| 欧美日韩在线综合| 韩国中文字幕2020精品| 精品久久人人做人人爽| 日韩国产在线观看一区| 欧美精品丝袜中出| 奇米色一区二区三区四区| 欧美mv日韩mv| 福利电影一区二区| 亚洲日本va午夜在线影院| 色偷偷88欧美精品久久久 | 免费看精品久久片| 国产欧美日产一区| 一本色道亚洲精品aⅴ| 日韩av一级片| 国产精品灌醉下药二区| 在线免费观看视频一区| 日本成人在线不卡视频| 欧美经典三级视频一区二区三区| av电影在线观看不卡| 日韩极品在线观看| 中文字幕av资源一区| jlzzjlzz亚洲女人18| 免费在线看一区| 一区二区三区四区乱视频| 日韩免费观看高清完整版在线观看| 成人影视亚洲图片在线| 免费成人在线影院| 亚洲已满18点击进入久久| 久久久无码精品亚洲日韩按摩| 欧美猛男gaygay网站| 狠狠色综合日日| 亚洲电影欧美电影有声小说| 国产精品区一区二区三| xnxx国产精品| 国产日韩精品一区二区三区 | 欧美国产成人在线| 日韩天堂在线观看| 欧美日韩免费视频| 欧美三级电影网| 欧美日韩www| 欧美午夜精品一区二区蜜桃| 91亚洲男人天堂| 99精品视频在线免费观看| 国产精品资源网| 国产成人免费网站| 成人综合在线视频| 波多野结衣中文字幕一区二区三区| 国产一区二区三区日韩 | 欧美日韩一区在线观看| 欧美午夜视频网站| 日韩欧美国产午夜精品| 国产日产亚洲精品系列| 亚洲人成7777| 丝袜美腿亚洲一区| 国内偷窥港台综合视频在线播放| 激情文学综合网| 成人午夜视频在线| 色综合天天在线| 欧美日韩高清在线播放| 欧美大片日本大片免费观看| 国产亚洲人成网站| 亚洲成a人片综合在线| 日本欧美在线看| av欧美精品.com| 69堂成人精品免费视频| 国产精品丝袜在线| 午夜精品成人在线| 国产成人在线视频免费播放| 日本道免费精品一区二区三区| 欧美高清一级片在线| 欧美激情自拍偷拍| 蜜臀精品久久久久久蜜臀| 99久久久精品免费观看国产蜜| 在线一区二区观看| 欧美国产精品劲爆| 国产一区二区三区视频在线播放| 欧美三级电影在线观看| 中文字幕一区二区三区av| 狠狠色综合色综合网络| 欧美一区二区三区视频在线| 亚洲综合成人在线| www.性欧美| 国产精品人成在线观看免费| 国产精品正在播放| 国产亚洲欧洲一区高清在线观看| 视频一区二区三区在线| 一本一本大道香蕉久在线精品| 久久蜜桃一区二区| 成人久久视频在线观看| 中文字幕电影一区| 在线亚洲一区二区| 亚洲欧美激情插| 欧美色手机在线观看| 同产精品九九九| 欧美日韩国产一级| 青青草91视频| 日韩欧美亚洲国产精品字幕久久久 | 亚洲成人精品一区| 欧美日韩精品一区视频| 日韩精品久久理论片| 26uuu国产一区二区三区| 成人午夜激情影院| 亚洲夂夂婷婷色拍ww47| 欧美一区二区二区| 成人av影视在线观看| 亚洲一区av在线| 久久婷婷久久一区二区三区| av电影在线观看一区| 首页国产欧美日韩丝袜| 国产免费成人在线视频| 欧美日韩一区二区三区高清| 精品一区二区影视| 亚洲三级理论片| 久久久国产午夜精品| 欧美高清性hdvideosex| 色婷婷综合五月| 成人综合日日夜夜| 精品综合久久久久久8888| 亚洲在线中文字幕| 国产亚洲成aⅴ人片在线观看| 国产精品亚洲专一区二区三区| 国产亚洲欧美在线| 欧美大胆一级视频| 欧美日韩二区三区| 亚洲一区二区三区四区五区中文| 欧美本精品男人aⅴ天堂| 日本高清免费不卡视频| 成人精品鲁一区一区二区| 另类中文字幕网| 处破女av一区二区| 国产福利一区在线| 国内精品免费**视频| 加勒比av一区二区| 激情小说亚洲一区| 激情综合五月婷婷| 黑人巨大精品欧美黑白配亚洲| 久久99国产精品尤物| 另类小说一区二区三区| 国产精品夜夜爽| 91婷婷韩国欧美一区二区| 99视频国产精品| 色香蕉久久蜜桃| 欧美高清性hdvideosex| 日韩一区二区在线播放| www国产成人免费观看视频 深夜成人网| 日韩一区二区三区三四区视频在线观看| 欧美猛男gaygay网站| 欧美精品一区男女天堂| 亚洲国产精品精华液ab| 亚洲欧美日韩系列| 天堂精品中文字幕在线| 国产成人亚洲精品青草天美| www.欧美色图| 欧美一级淫片007| 国产欧美va欧美不卡在线| 曰韩精品一区二区| 国产米奇在线777精品观看| www.亚洲国产| 精品电影一区二区三区 | 国产综合久久久久久久久久久久| 成人sese在线| 欧美一区二区久久| 亚洲欧美日韩久久| 国产美女视频一区|