本文整理汇总了Python中omero_model_ExperimenterGroupI.ExperimenterGroupI类的典型用法代码示例。如果您正苦于以下问题:Python ExperimenterGroupI类的具体用法?Python ExperimenterGroupI怎么用?Python ExperimenterGroupI使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了ExperimenterGroupI类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: testCreatAndUpdatePublicGroup
def testCreatAndUpdatePublicGroup(self):
# this is the test of creating public group and updating it
# including changes in #1434
uuid = self.uuid()
admin = self.root.sf.getAdminService()
# create group1
new_gr1 = ExperimenterGroupI()
new_gr1.name = rstring("group1_%s" % uuid)
new_gr1.ldap = rbool(False)
p = PermissionsI()
p.setUserRead(True)
p.setUserWrite(True)
p.setGroupRead(True)
p.setGroupWrite(True)
p.setWorldRead(False)
p.setWorldAnnotate(False)
p.setWorldWrite(False)
new_gr1.details.permissions = p
g1_id = admin.createGroup(new_gr1)
# update name of group1
gr1 = admin.getGroup(g1_id)
assert 'rwrw--' == str(gr1.details.permissions)
new_name = "changed_name_group1_%s" % uuid
gr1.name = rstring(new_name)
admin.updateGroup(gr1)
gr1_u = admin.getGroup(g1_id)
assert new_name == gr1_u.name.val
示例2: test1109
def test1109(self):
uuid = self.uuid()
admin = self.root.sf.getAdminService()
# Replace defaultGroup with something new
defaultGroup = self.new_group()
# create data
#group1
new_gr1 = ExperimenterGroupI()
new_gr1.name = rstring("group1_%s" % uuid)
gid = admin.createGroup(new_gr1)
#new user1
new_exp = ExperimenterI()
new_exp.omeName = rstring("user_%s" % uuid)
new_exp.firstName = rstring("New")
new_exp.lastName = rstring("Test")
new_exp.email = rstring("[email protected]")
listOfGroups = list()
# defaultGroup = admin.lookupGroup("default") Removed in 4.2
listOfGroups.append(admin.getGroup(gid))
listOfGroups.append(admin.lookupGroup("user"))
eid = admin.createExperimenter(new_exp, defaultGroup, listOfGroups)
#test
exp = admin.getExperimenter(eid)
#print "exp: ", exp.id.val, " his default group is: ", admin.getDefaultGroup(exp.id.val).id.val
gr1 = admin.getGroup(2)
indefault = admin.containedExperimenters(gr1.id.val)
# print "members of group %s %i" % (gr1.name.val, gr1.id.val)
for m in indefault:
if m.id.val == exp.id.val:
assert m.copyGroupExperimenterMap()[0].parent.id.val == admin.getDefaultGroup(exp.id.val).id.val
# print "exp: id=", m.id.val, "; GEM[0]: ", type(m.copyGroupExperimenterMap()[0].parent), m.copyGroupExperimenterMap()[0].parent.id.val
gr2 = admin.getGroup(gid)
members2 = admin.containedExperimenters(gr2.id.val)
# print "members of group %s %i" % (gr2.name.val, gr2.id.val)
for m in members2:
if m.id.val == exp.id.val:
copied_id = m.copyGroupExperimenterMap()[0].parent.id.val
got_id = admin.getDefaultGroup(exp.id.val).id.val
contained = admin.containedGroups(m.id.val)
assert copied_id == got_id,\
"""
%s != %s. Groups for experimenter %s = %s (graph) or %s (contained)
""" % ( copied_id, got_id, exp.id.val, [ x.parent.id.val for x in m.copyGroupExperimenterMap() ], [ y.id.val for y in contained ] )
示例3: testLinkGroupAndUser
def testLinkGroupAndUser(self):
user = ExperimenterI()
group = ExperimenterGroupI()
link = GroupExperimenterMapI()
link.id = rlong(1)
link.link(group, user)
user.addGroupExperimenterMap(link, False)
group.addGroupExperimenterMap(link, False)
count = 0
for i in user.iterateGroupExperimenterMap():
count += 1
assert count == 1
示例4: testMapStringField
def testMapStringField(self):
uuid = self.uuid()
queryService = self.root.getSession().getQueryService()
updateService = self.root.getSession().getUpdateService()
group = ExperimenterGroupI()
group.setName(rstring(uuid))
group.setLdap(rbool(False))
group.setConfig([NV("language", "python")])
group = updateService.saveAndReturnObject(group)
group = queryService.findByQuery(
("select g from ExperimenterGroup g join fetch g.config "
"where g.id = %s" % group.getId().getValue()), None)
self.assertNV(group.getConfig()[0], "language", "python")
示例5: testCreatGroupAndchangePermissions
def testCreatGroupAndchangePermissions(self):
# this is the test of updating group permissions
# including changes in #1434
uuid = self.root.sf.getAdminService().getEventContext().sessionUuid
query = self.root.sf.getQueryService()
update = self.root.sf.getUpdateService()
admin = self.root.sf.getAdminService()
#create group1
new_gr1 = ExperimenterGroupI()
new_gr1.name = rstring("group1_%s" % uuid)
p = PermissionsI()
p.setUserRead(True)
p.setUserWrite(True)
p.setGroupRead(False)
p.setGroupWrite(False)
p.setWorldRead(False)
p.setWorldWrite(False)
new_gr1.details.permissions = p
g1_id = admin.createGroup(new_gr1)
#incrise permissions of group1 to rwr---
gr1 = admin.getGroup(g1_id)
p1 = PermissionsI()
p1.setUserRead(True)
p1.setUserWrite(True)
p1.setGroupRead(True)
p1.setGroupWrite(False)
p1.setWorldRead(False)
p1.setWorldWrite(False)
admin.changePermissions(gr1, p1)
gr2 = admin.getGroup(g1_id)
self.assertEquals('rwr---', str(gr2.details.permissions))
#incrise permissions of group1 to rwrw--
p2 = PermissionsI()
p2.setUserRead(True)
p2.setUserWrite(True)
p2.setGroupRead(True)
p2.setGroupWrite(True)
p2.setWorldRead(False)
p2.setWorldWrite(False)
admin.changePermissions(gr2, p2)
gr3 = admin.getGroup(g1_id)
self.assertEquals('rwrw--', str(gr3.details.permissions))
示例6: add
def add(self, args):
import omero
from omero.rtypes import rbool, rstring
from omero_model_ExperimenterGroupI import ExperimenterGroupI as Grp
perms = self.parse_perms(args)
c = self.ctx.conn(args)
g = Grp()
g.name = rstring(args.name)
g.ldap = rbool(False)
g.details.permissions = perms
admin = c.getSession().getAdminService()
try:
grp = admin.lookupGroup(args.name)
if grp:
if args.ignore_existing:
self.ctx.out("Group exists: %s (id=%s)"
% (args.name, grp.id.val))
return
else:
self.ctx.die(3, "Group exists: %s (id=%s)"
% (args.name, grp.id.val))
except omero.ApiUsageException:
pass # Apparently no such group exists
try:
id = admin.createGroup(g)
self.ctx.out("Added group %s (id=%s) with permissions %s"
% (args.name, id, perms))
except omero.ValidationException, ve:
# Possible, though unlikely after previous check
if self.exc.is_constraint_violation(ve):
self.ctx.die(66, "Group already exists: %s" % args.name)
else:
self.ctx.die(67, "Unknown ValidationException: %s"
% ve.message)
示例7: testLoginToPublicGroupTicket1940
def testLoginToPublicGroupTicket1940(self):
# As root create a new group
uuid = self.uuid()
g = ExperimenterGroupI()
g.name = rstring(uuid)
g.ldap = rbool(False)
g.details.permissions = PermissionsI("rwrwrw")
self.root.sf.getAdminService().createGroup(g)
# As a regular user, login to that group
rv = self.root.getPropertyMap()
ec = self.client.sf.getAdminService().getEventContext()
public_client = omero.client(rv)
public_client.getImplicitContext().put("omero.group", uuid)
sf = public_client.createSession(ec.userName, ec.userName)
ec = sf.getAdminService().getEventContext()
assert uuid == ec.groupName
# But can the user write anything?
tag = TagAnnotationI()
tag = sf.getUpdateService().saveAndReturnObject(tag)
# And link?
# And edit? cF. READ-ONLY & READ-LINK
sf.getUpdateService().deleteObject(tag)
示例8: testCreatGroupAndchangePermissions
def testCreatGroupAndchangePermissions(self):
# this is the test of updating group permissions
# including changes in #1434
uuid = self.uuid()
admin = self.root.sf.getAdminService()
# create group1
new_gr1 = ExperimenterGroupI()
new_gr1.name = rstring("group1_%s" % uuid)
new_gr1.ldap = rbool(False)
p = PermissionsI()
p.setUserRead(True)
p.setUserWrite(True)
p.setGroupRead(False)
p.setGroupAnnotate(False)
p.setGroupWrite(False)
p.setWorldRead(False)
p.setWorldAnnotate(False)
p.setWorldWrite(False)
new_gr1.details.permissions = p
g1_id = admin.createGroup(new_gr1)
# increase permissions of group1 to rwr---
p1 = PermissionsI()
p1.setUserRead(True)
p1.setUserWrite(True)
p1.setGroupRead(True)
p1.setGroupAnnotate(False)
p1.setGroupWrite(False)
p1.setWorldRead(False)
p1.setWorldAnnotate(False)
p1.setWorldWrite(False)
self.change_permissions(g1_id, str(p1), self.root)
gr2 = admin.getGroup(g1_id)
assert 'rwr---' == str(gr2.details.permissions)
# increase permissions of group1 to rwra--
gr2 = admin.getGroup(g1_id)
p2 = PermissionsI()
p2.setUserRead(True)
p2.setUserWrite(True)
p2.setGroupRead(True)
p2.setGroupAnnotate(True)
p2.setGroupWrite(False)
p2.setWorldRead(False)
p2.setWorldAnnotate(False)
p2.setWorldWrite(False)
self.change_permissions(g1_id, str(p2), self.root)
gr3 = admin.getGroup(g1_id)
assert 'rwra--' == str(gr3.details.permissions)
# increase permissions of group1 to rwrw--
gr3 = admin.getGroup(g1_id)
p3 = PermissionsI()
p3.setUserRead(True)
p3.setUserWrite(True)
p3.setGroupRead(True)
p3.setGroupWrite(True)
p3.setWorldRead(False)
p3.setWorldAnnotate(False)
p3.setWorldWrite(False)
self.change_permissions(g1_id, str(p3), self.root)
gr4 = admin.getGroup(g1_id)
assert 'rwrw--' == str(gr4.details.permissions)
示例9: testThumbs
def testThumbs(self):
# root session is root.sf
uuid = self.root.sf.getAdminService().getEventContext().sessionUuid
admin = self.root.sf.getAdminService()
group1name = "private_%s" % uuid
group2name = "read-only_%s" % uuid
group3name = "collaborative_%s" % uuid
ownerName = "owner_%s" % uuid
user1name = "user1_%s" % uuid
user2name = "user2_%s" % uuid
### create three users in 3 groups
listOfGroups = list()
listOfGroups.append(admin.lookupGroup("user")) # all users need to be in 'user' group to do anything!
#group1 - private
new_gr1 = ExperimenterGroupI()
new_gr1.name = rstring(group1name)
p = PermissionsI('rw----')
new_gr1.details.permissions = p
gid = admin.createGroup(new_gr1)
privateGroup = admin.getGroup(gid)
self.assertEquals('rw----', str(privateGroup.details.permissions))
listOfGroups.append(privateGroup)
#group2 - read-only
new_gr2 = ExperimenterGroupI()
new_gr2.name = rstring(group2name)
p2 = PermissionsI('rwr---')
new_gr2.details.permissions = p2
gid2 = admin.createGroup(new_gr2)
readOnlyGroup = admin.getGroup(gid2)
self.assertEquals('rwr---', str(readOnlyGroup.details.permissions))
listOfGroups.append(readOnlyGroup)
#group3 - read-annotate
new_gr3 = ExperimenterGroupI()
new_gr3.name = rstring(group3name)
p = PermissionsI('rwra--')
new_gr3.details.permissions = p
gid3 = admin.createGroup(new_gr3)
collaborativeGroup = admin.getGroup(gid3)
self.assertEquals('rwra--', str(collaborativeGroup.details.permissions))
listOfGroups.append(collaborativeGroup)
#new user (group owner)
owner = ExperimenterI()
owner.omeName = rstring(ownerName)
owner.firstName = rstring("Group")
owner.lastName = rstring("Owner")
owner.email = rstring("[email protected]")
ownerId = admin.createExperimenterWithPassword(owner, rstring("ome"), privateGroup, listOfGroups)
newOwner = admin.getExperimenter(ownerId)
admin.setGroupOwner(privateGroup, newOwner)
admin.setGroupOwner(readOnlyGroup, newOwner)
admin.setGroupOwner(collaborativeGroup, newOwner)
#new user1
new_exp = ExperimenterI()
new_exp.omeName = rstring(user1name)
new_exp.firstName = rstring("Will")
new_exp.lastName = rstring("Moore")
new_exp.email = rstring("[email protected]")
eid = admin.createExperimenterWithPassword(new_exp, rstring("ome"), privateGroup, listOfGroups)
#new user2
new_exp2 = ExperimenterI()
new_exp2.omeName = rstring(user2name)
new_exp2.firstName = rstring("User")
new_exp2.lastName = rstring("Test2")
new_exp2.email = rstring("[email protected]")
eid2 = admin.createExperimenterWithPassword(new_exp2, rstring("ome"), privateGroup, listOfGroups)
## get users
user1 = admin.getExperimenter(eid)
user2 = admin.getExperimenter(eid2)
## login as user1 (into their default group)
client_share1 = self.new_client(user=user1, password="ome")
print len(client_share1.sf.activeServices())
# create image in private group
privateImageId = createTestImage(client_share1.sf)
print len(client_share1.sf.activeServices())
self.getThumbnail(client_share1.sf, privateImageId) # if we don't get thumbnail, test fails when another user does
print len(client_share1.sf.activeServices())
# change user into read-only group. Use object Ids for this, NOT objects from a different context
a = client_share1.sf.getAdminService()
me = a.getExperimenter(a.getEventContext().userId)
a.setDefaultGroup(me, omero.model.ExperimenterGroupI(gid2, False))
self.set_context(client_share1, gid2)
#.........这里部分代码省略.........
示例10: testFindAndCountAnnotationsForSharedData
def testFindAndCountAnnotationsForSharedData(self):
uuid = self.root.sf.getAdminService().getEventContext().sessionUuid
query = self.root.sf.getQueryService()
update = self.root.sf.getUpdateService()
admin = self.root.sf.getAdminService()
ipojo = self.root.sf.getContainerService()
### create new users
#group1
new_gr1 = ExperimenterGroupI()
new_gr1.name = rstring("group1_%s" % uuid)
gid = admin.createGroup(new_gr1)
#new user1
new_exp = ExperimenterI()
new_exp.omeName = rstring("user1_%s" % uuid)
new_exp.firstName = rstring("New")
new_exp.lastName = rstring("Test")
defaultGroup = admin.getGroup(gid)
listOfGroups = list()
listOfGroups.append(admin.lookupGroup("user"))
eid = admin.createExperimenterWithPassword(new_exp, rstring("ome"), defaultGroup, listOfGroups)
#new user2
new_exp2 = ExperimenterI()
new_exp2.omeName = rstring("user2_%s" % uuid)
new_exp2.firstName = rstring("New2")
new_exp2.lastName = rstring("Test2")
defaultGroup = admin.getGroup(gid)
listOfGroups = list()
listOfGroups.append(admin.lookupGroup("user"))
eid2 = admin.createExperimenterWithPassword(new_exp2, rstring("ome"), defaultGroup, listOfGroups)
## get users
user1 = admin.getExperimenter(eid)
user2 = admin.getExperimenter(eid2)
## login as user1
cl1 = self.new_client(user=user1, password="ome")
update1 = cl1.sf.getUpdateService()
ipojo1 = cl1.sf.getContainerService()
# create image
img = ImageI()
img.setName(rstring('test1154-img-%s' % (uuid)))
img.setAcquisitionDate(rtime(0))
# default permission 'rw----':
img = update1.saveAndReturnObject(img)
img.unload()
ann1 = CommentAnnotationI()
ann1.textValue = rstring("user comment - %s" % uuid)
l_ann1 = ImageAnnotationLinkI()
l_ann1.setParent(img)
l_ann1.setChild(ann1)
update1.saveObject(l_ann1)
#user retrives the annotations for image
coll_count = ipojo1.getCollectionCount("Image", "ome.model.containers.Image_annotationLinks", [img.id.val], None)
self.assertEquals(1, coll_count.get(img.id.val, []))
#self.assertEquals(1, len(ipojo1.findAnnotations("Image", [img.id.val], None, None).get(img.id.val, [])))
## login as user2
cl2 = self.new_client(user=user2, password="ome")
update2 = cl1.sf.getUpdateService()
ann = CommentAnnotationI()
ann.textValue = rstring("user2 comment - %s" % uuid)
l_ann = ImageAnnotationLinkI()
l_ann.setParent(img)
l_ann.setChild(ann)
update2.saveObject(l_ann)
#do they see the same vals?
#print ipojo1.getCollectionCount("Image", "ome.model.containers.Image_annotationLinks", [img.id.val], None)
#print ipojo.getCollectionCount("Image", "ome.model.containers.Image_annotationLinks", [img.id.val], None)
#print len(ipojo1.findAnnotations("Image", [img.id.val], None, None).get(img.id.val, []))
#print len(ipojo.findAnnotations("Image", [img.id.val], None, None).get(img.id.val, []))
coll_count = ipojo1.getCollectionCount("Image", "ome.model.containers.Image_annotationLinks", [img.id.val], None)
self.assertEquals(2, coll_count.get(img.id.val, []))
#anns = ipojo1.findAnnotations("Image", [img.id.val], None, None).get(img.id.val, [])
#self.assertEquals(2, len(anns))
#self.assert_(anns[0].details.permissions == 'rw----')
#self.assert_(anns[1].details.permissions == 'rw----')
cl1.sf.closeOnDestroy()
cl2.sf.closeOnDestroy()