public ome.model.meta.ShareMember newInstance() { return new ome.model.meta.ShareMember(); }
public ome.model.meta.Experimenter child() { return (ome.model.meta.Experimenter) getChild(); }
public void setChild(IObject child) { if (! _loaded ) errorIfUnloaded(); this.child = child; } protected ome.model.internal.Details details = new Details();
@Override public Object retrieve(String field) { if (field == null) { return null; } else if (field.equals(ID)) { return getId(); } else if (field.equals(VERSION)) { return getVersion(); } else if (field.equals(PARENT)) { return getParent(); } else if (field.equals(CHILD)) { return getChild(); } else if (field.equals(DETAILS)) { return getDetails(); } else { if (_dynamicFields != null) { return _dynamicFields.get(field); } return null; } }
@Override public void putAt(String field, Object value) { if (field == null) { return; } else if (field.equals(ID)) { setId((Long) value); } else if (field.equals(VERSION)) { setVersion((Integer) value); } else if (field.equals(PARENT)) { setParent((IObject)value); } else if (field.equals(CHILD)) { setChild((IObject)value); } else if (field.equals(DETAILS)) { setDetails((ome.model.internal.Details)value); } else { if (_dynamicFields == null) { _dynamicFields = new java.util.HashMap<String, Object>(); } _dynamicFields.put(field,value); } }
@SuppressWarnings("unchecked") private void synchronizeMembers(Session session, ShareData data) { Query q = session.createQuery("select sm from ShareMember sm " + "where sm.parent = ?"); q.setLong(0, data.id); List<ShareMember> members = (List<ShareMember>) q.list(); Map<Long, ShareMember> lookup = new HashMap<Long, ShareMember>(); for (ShareMember sm : members) { lookup.put(sm.getChild().getId(), sm); } Set<Long> intendedUserIds = new HashSet<Long>(data.members); intendedUserIds.add(data.owner); Set<Long> currentUserIds = lookup.keySet(); Set<Long> added = new HashSet<Long>(intendedUserIds); added.removeAll(currentUserIds); for (Long toAdd : added) { ShareMember sm = new ShareMember(); sm.link(new Share(data.id, false), new Experimenter(toAdd, false)); session.merge(sm); } Set<Long> removed = new HashSet<Long>(currentUserIds); removed.removeAll(intendedUserIds); for (Long toRemove : removed) { session.delete(lookup.get(toRemove)); } }
/** * Main constructor. */ public ShareMember (Long id, boolean loaded) { setId(id); if (loaded) { getDetails().setContext(this); } else { if (this.id == null) { throw new ApiUsageException("Id cannot be null for a proxy"); } unload(); } }
public ome.model.meta.Share parent() { return (ome.model.meta.Share) getParent(); }
public void setParent(IObject parent) { if (! _loaded ) errorIfUnloaded(); this.parent = parent; } protected IObject child = null;
public ome.model.meta.ShareMember proxy() { return new ome.model.meta.ShareMember(this.id, false); }
@Override public void setVersion(Integer version) { if (! _loaded ) errorIfUnloaded(); this.version = version; }
/** * Use the {@link ome.model.internal.Details#copy(ome.model.internal.Details)} * or {@link ome.model.internal.Details#shallowCopy(ome.model.internal.Details)} * methods to set the {@link Details} instance instead. */ protected void setDetails(ome.model.internal.Details details) { if (! _loaded ) errorIfUnloaded(); this.details = (Details) details; }
/** * This version number is controlled by the database for optimisitic * locking. */ @javax.persistence.Column(name="version") // @javax.persistence.Version //TODO mark off #118 if this succeeds, otherwise, completely remove versions and test updateEvent @Override public Integer getVersion() { if (! _loaded ) errorIfUnloaded(); return this.version; }
/** * Many-to-one field ome.model.meta.ShareMember.child (ome.model.meta.Experimenter) */ @javax.persistence.ManyToOne(fetch = javax.persistence.FetchType.LAZY, cascade = {javax.persistence.CascadeType.MERGE, javax.persistence.CascadeType.PERSIST, javax.persistence.CascadeType.REFRESH}, targetEntity = ome.model.meta.Experimenter.class) @org.hibernate.annotations.Cascade({org.hibernate.annotations.CascadeType.LOCK, org.hibernate.annotations.CascadeType.MERGE, org.hibernate.annotations.CascadeType.PERSIST, org.hibernate.annotations.CascadeType.REPLICATE, org.hibernate.annotations.CascadeType.REFRESH, org.hibernate.annotations.CascadeType.SAVE_UPDATE, org.hibernate.annotations.CascadeType.EVICT}) @javax.persistence.JoinColumn(name="child", nullable=false, unique=false, insertable=true, updatable=true) @org.hibernate.annotations.ForeignKey(name="FKsharemember_child_experimenter") @org.hibernate.annotations.Target(ome.model.meta.Experimenter.class) public IObject getChild() { if (! _loaded ) errorIfUnloaded(); return this.child; }
/** * Many-to-one field ome.model.meta.ShareMember.parent (ome.model.meta.Share) */ @javax.persistence.ManyToOne(fetch = javax.persistence.FetchType.LAZY, cascade = {javax.persistence.CascadeType.MERGE, javax.persistence.CascadeType.PERSIST, javax.persistence.CascadeType.REFRESH}, targetEntity = ome.model.meta.Share.class) @org.hibernate.annotations.Cascade({org.hibernate.annotations.CascadeType.LOCK, org.hibernate.annotations.CascadeType.MERGE, org.hibernate.annotations.CascadeType.PERSIST, org.hibernate.annotations.CascadeType.REPLICATE, org.hibernate.annotations.CascadeType.REFRESH, org.hibernate.annotations.CascadeType.SAVE_UPDATE, org.hibernate.annotations.CascadeType.EVICT}) @javax.persistence.JoinColumn(name="parent", nullable=false, unique=false, insertable=true, updatable=true) @org.hibernate.annotations.ForeignKey(name="FKsharemember_parent_share") @org.hibernate.annotations.Target(ome.model.meta.Share.class) public IObject getParent() { if (! _loaded ) errorIfUnloaded(); return this.parent; }
@Override public ome.model.internal.Details getDetails() { if (! _loaded ) errorIfUnloaded(); return this.details;