[Zope] [ZClass constructor question]: How can I copy objects into my container class?

Simon Brogden sbrogden@ehive.co.uk
Thu, 22 Nov 2001 16:39:41 -0000


SGkgSmltLA0KTmljZSBvbmUhIEkgd2VudCB3aXRoIHRoZSBzY3JpcHQgYXBwcm9hY2ggYW5kIGNh
bGxlZCBmcm9tIHdpdGhpbiB0aGU6DQogPGR0bWwtd2l0aCBwcm9kdWN0bmFtZS5jcmVhdGVJbk9i
amVjdE1hbmFnZXIoUkVRVUVTVFsnaWQnXSwgLi4uKT4NCiANCkFsbCB3b3JrZWQgZmluZS4gVGhh
bmsgeW91Lg0KIA0KSSBsb29rZWQgYXQgdGhlIG90aGVyIGFwcHJvYWNoZXMgeW91IG1lbnRpb25l
ZDoNCiANCjxkdG1sLXdpdGggbmV3aXRlbW5hbWU+DQouLi4NCjwvZHRtbC13aXRoPg0KIA0KJg0K
PGR0bWwtY2FsbCAibmV3aXRlbW5hbWUuaW5pdCgpIj4gDQogDQpNdWNoIGhlYWRzY3JhdGNoaW5n
Lg0KIA0KV2hhdCBkbyBJIHJlcGxhY2UgJ25ld2l0ZW1uYW1lJyB3aXRoIHRvIGdldCBpdCB0byB3
b3JrPyBJIHRyaWVkDQoiUkVRVUVTVFsnaWQnXS5pbml0KCkiIGFuZCBzZXZlcmFsIHZhcmlhbnRz
IGJ1dCBnZXQgIkF0dHJpYnV0ZSBlcnJvcnMiDQphYm91dCAiaW5pdCIuDQogDQpUaGUgb25seSB3
YXkgSSBjYW4gZ2V0IHN0dWYgZnRvIHdvcmsgaXMgd2hlbiB0aGUgaW5pdCgpIGNhbGwgaXMgbWFk
ZQ0KaW5zaWRlIHRoZSAiPGR0bWwtd2l0aCBwcm9kdWN0bmFtZS5jcmVhdGVJbk9iamVjdE1hbmFn
ZXIoUkVRVUVTVFsnaWQnXSwNCi4uLik+IiBibG9jay4NCiANCkkgZ3Vlc3MgSSBuZWVkIGhlbHAg
ZmlndXJpbmcgb3V0IGhvdyB0byBsb29rLXVwIHRoZSBuYW1lIG9mIHRoZSBpdGVtDQp0aGF0J3Mg
Y29udGFpbmVkIGluIHRoZSB2YXIgJ2lkJyBhbmQgdXNlIGl0IGFzIHBhcnQgb2YgdGhlIGNhbGwu
DQogDQpUaGFua3MgYWdhaW4sDQpTaW1vbi4NCg0KCS0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t
IA0KCUZyb206IEppbSBXYXNoaW5ndG9uIA0KCVNlbnQ6IFRodSAyMi8xMS8yMDAxIDAxOjE3IA0K
CVRvOiBTaW1vbiBCcm9nZGVuOyB6b3BlQHpvcGUub3JnIA0KCUNjOiANCglTdWJqZWN0OiBSZTog
W1pvcGVdIFtaQ2xhc3MgY29uc3RydWN0b3IgcXVlc3Rpb25dOiBIb3cgY2FuIEkNCmNvcHkgb2Jq
ZWN0cyBpbnRvIG15IGNvbnRhaW5lciBjbGFzcz8NCgkNCgkNCg0KCVNpbW9uIEJyb2dkZW4gd3Jv
dGU6DQoJDQoJPkhpIEFsbCwNCgk+DQoJPkknbSAoYmFuZ2luZyBteSBoZWFkIGFnYWluc3QgdGhl
IGRlc2spIHdyaXRpbmcgdG8gd3JpdGUgYQ0KWkNsYXNzIHRoYXQNCgk+aW5oZXJpdHMgZnJvbSBP
YmplY3RNYW5hZ2VyIGFuZCBjYW4gY29udGFpbiBvdGhlciBvYmplY3RzDQooRFRNTE1ldGhvZHMg
Jg0KCT5JbWFnZXMpLiBXaGVuIGFuIGluc3RhbmNlIG9mIHRoZSBjbGFzcyBpcyBjcmVhdGVkIEkg
d2FudCB0bw0KY29weS9jcmVhdGUNCgk+YSBjb3VwbGUgb2YgZGVmYXVsdCBEVE1MIG1ldGhvZHMg
aW5zaWRlIHRoZSBpbnN0YW5jZSwgc28gdGhlDQp1c2VyIGNhbg0KCT5tb2RpZnkgdGhlbS4NCgk+
DQoJPlRyb3VibGUgaXMsIHRoZSBtZXRob2RzIGFwcGVhciBhdCB0aGUgc2FtZSBuZXN0aW5nIGxl
dmVsIGFzIHRoZQ0KY2xhc3MgaXMNCgk+Y3JlYXRlZCBhdCwgbm90IGNvbnRhaW5lZCB3aXRoaW4g
aXQuDQoJPg0KCT5JJ20gcHV0dGluZyB0aGUgY3JlYXRlL2NvcHkgY2FsbCBpbnNpZGUgdGhlIGNs
YXNzIGNvbnN0cnVjdG9yDQptZXRob2Q6DQoJPjxkdG1sLWNhbGwNCiJtYW5hZ2VfYWRkUHJvZHVj
dFsnT0ZTUCddLm1hbmFnZV9hZGREVE1MTWV0aG9kKC4uLi4pPg0KCT4NCgk+SSd2ZSB0cmF3bGVk
IHRoZSBob3ctdG8ncyAmIHRoZSBleGFtcGxlIHByb2R1Y3RzICh0aGUgIkhvdyB0bzoNCkJ1aWxk
IGENCgk+c2VhcmNoYWJsZSBqb2IgYm9hcmQiIGlzIGV4Y2VsbGVudCBCVFcpIHRvIG5vIGF2YWls
Lg0KCT4NCgk+RG9lcyBhbnlvbmUga25vdyB3aGVyZSBJJ20gZ29pbmcgd3Jvbmc/DQoJPg0KCUhp
LCBTaW1vbg0KCQ0KCVRoZSBzdGFuZGFyZCBhbnN3ZXIgaXMgdG8gdXNlIHRoZSBkdG1sLXdpdGgg
dGFnOg0KCQ0KCTxkdG1sLXdpdGggbmV3aXRlbW5hbWU+DQoJPGR0bWwtY2FsbCAibWFuYWdlX2Fk
ZEJsYWgocGFyYW1zKSI+DQoJPC9kdG1sLXdpdGg+DQoJDQoJQnV0IHlvdSBtaWdodCBjb25zaWRl
ciBtYWtpbmcgYSBweXRob24gc2NyaXB0IGNhbGxlZCAiaW5pdCIgb3INCnNvbWV0aGluZw0KCWxp
a2UgdGhhdCBmb3IgdGhlIGNsYXNzIHlvdSBhcmUgYWRkaW5nOg0KCQ0KCW1ldGhvZElEID0gJ2V4
YW1wbGUnDQoJbWV0aG9kVGl0bGUgPSAnVGhpcyBpcyB0aGUgZXhhbXBsZSBtZXRob2QiDQoJbWV0
aG9kU3RhbmRhcmRUZXh0ID0gIiIiPHN0YW5kYXJkX2h0bWxfaGVhZGVyPg0KCSAgICAgICAgICAg
IGV4YW1wbGUgZHRtbCB0ZXh0IGdvZXMgaGVyZQ0KCSAgICAgICAgICAgIDxkdG1sLXZhciBzdGFu
ZGFyZF9odG1sX2Zvb3Rlcj4iIiINCgljb250YWluZXIubWFuYWdlX2FkZERUTUxNZXRob2QoaWQ9
bWV0aG9kSUQsdGl0bGU9IiIpDQoJY29udGFpbmVyW21ldGhvZElEXS5tYW5hZ2VfZWRpdChkYXRh
PW1ldGhvZFN0YW5kYXJkVGV4dCwNCnRpdGxlPW1ldGhvZFRpdGxlKQ0KCQ0KCXRoZW4gYWZ0ZXIg
eW91IGFkZCB0aGUgbmV3IGl0ZW0sDQoJDQoJPGR0bWwtY2FsbCAibmV3aXRlbW5hbWUuaW5pdCgp
Ij4NCgkNCglodGgsDQoJDQoJLS0gSmltIFdhc2hpbmd0b24NCgkNCgkNCgkNCglfX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KCVpvcGUgbWFpbGxpc3QgIC0g
IFpvcGVAem9wZS5vcmcNCglodHRwOi8vbGlzdHMuem9wZS5vcmcvbWFpbG1hbi9saXN0aW5mby96
b3BlDQoJKiogICBObyBjcm9zcyBwb3N0cyBvciBIVE1MIGVuY29kaW5nISAgKioNCgkoUmVsYXRl
ZCBsaXN0cyAtDQoJICBodHRwOi8vbGlzdHMuem9wZS5vcmcvbWFpbG1hbi9saXN0aW5mby96b3Bl
LWFubm91bmNlDQoJICBodHRwOi8vbGlzdHMuem9wZS5vcmcvbWFpbG1hbi9saXN0aW5mby96b3Bl
LWRldiApDQoJDQoJDQoJDQoNCg==