Class PyUser
java.lang.Object
com.inductiveautomation.ignition.common.user.PyUser
- All Implemented Interfaces:
Countable,Extendable<PropertySet>,Mergable<PropertySet>,MutablePropertyValueSource,PropertySet,PropertyValueSource,User,Serializable,Iterable<PropertyValue>
A User implementation that delegates to another user object, but has some methods that are more scripting friendly.
- See Also:
-
Field Summary
Fields inherited from interface com.inductiveautomation.ignition.common.config.PropertySet
EMPTY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddContactInfo(String contactType, String value) Convenience method for scripting to add a new contactInfo easily.voidaddContactInfo(org.python.core.PyDictionary contactDictionary) voidConvenience method for scripting to add a new role easily.voidaddRoles(Collection<String> roles) voidaddScheduleAdjustment(Date start, Date end, boolean available, String note) Convenience method for scripting to add a new schedule adjustment easily.voidaddScheduleAdjustments(List<ScheduleAdjustment> scheduleAdjustments) boolean<T> TRetrieves the value of the property, or null if this set doesn't contain that property.Returns all of the contact information for the userintgetCount()getId()An opaque identifier that can be used to identify this user.<T> TgetOrDefault(Property<T> prop) <T> TGet the value for a givenProperty, or else fall back to value if it's not present.getPath()Generate an path that unambiguously references this userThe name of the user management profile this user was retrieved from.Collection<Property<?>>getRoles()Returns all of the roles this user is a has.Returns all of this user's upcoming schedule adjustmentsReturns the opaque PropertyValue objects.booleanisExtended(Property<?> prop) Returns whether this property set contains a value for the prop, and the prop was actually inherited.booleanisInherited(Property<?> prop) Indicates whether the property was inherited from a parent type.iterator()voidmerge(PropertySet other, boolean localOnly) Merges the values from other collection into this one.voidvoidremoveContactInfo(String contactType, String value) voidremoveRole(String role) voidremoveScheduleAdjustment(Date start, Date end, boolean available, String note) <T> voidvoidset(PropertyValue propValue) voidvoidsetContactInfo(List<ContactInfo> contactInfo) voidsetProfileName(String newProfileName) Scripting functions allow adding and editing of users, and profile names may need to change.voidsetRoles(Collection<String> roles) voidsetScheduleAdjustments(List<ScheduleAdjustment> scheduleAdjustments) toString()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliteratorMethods inherited from interface com.inductiveautomation.ignition.common.config.PropertySet
extend, getExtension, newDefaultInstance, newExtensionMethods inherited from interface com.inductiveautomation.ignition.common.config.PropertyValueSource
getNonNull, getNonNull
-
Constructor Details
-
PyUser
-
-
Method Details
-
toString
-
get
-
contains
- Specified by:
containsin interfacePropertyValueSource- Returns:
- True if the source contains a value for prop.
-
getOrDefault
- Specified by:
getOrDefaultin interfacePropertyValueSource- Returns:
- The value for prop or
Property.getDefaultValue()if not present. Can return null if the value is null.
-
get
Description copied from interface:PropertyValueSourceRetrieves the value of the property, or null if this set doesn't contain that property.- Specified by:
getin interfacePropertyValueSource
-
getOrElse
Description copied from interface:PropertyValueSourceGet the value for a givenProperty, or else fall back to value if it's not present.- Specified by:
getOrElsein interfacePropertyValueSource- Parameters:
property- ThePropertyfor which a value is to be retrieved.value- The value to default to if property isn't present.- Returns:
- The value of property if present, value if not. Can return null if the value is null.
-
iterator
- Specified by:
iteratorin interfaceIterable<PropertyValue>
-
set
- Specified by:
setin interfaceMutablePropertyValueSource
-
set
- Specified by:
setin interfaceMutablePropertyValueSource
-
set
-
remove
- Specified by:
removein interfaceMutablePropertyValueSource
-
getCount
public int getCount() -
getProperties
- Specified by:
getPropertiesin interfacePropertyValueSource
-
getValues
Description copied from interface:PropertyValueSourceReturns the opaque PropertyValue objects. This can be useful when you want to avoid the strict type checking of the value, and it's important to note that if the property is bound, the value will be a BoundValue. Be very careful about overriding, and make sure to maintain the methodology of using getProperties to iterate and get (or getOrDefault), to get the value, because those are all handled differently by BoundPropertySets, ExtendedPropertySets, etc.- Specified by:
getValuesin interfacePropertyValueSource
-
isExtended
Description copied from interface:PropertySetReturns whether this property set contains a value for the prop, and the prop was actually inherited. In other words, this is true if the property is inherited, and an override value is present.- Specified by:
isExtendedin interfacePropertySet
-
isInherited
Description copied from interface:PropertySetIndicates whether the property was inherited from a parent type.- Specified by:
isInheritedin interfacePropertySet
-
merge
Description copied from interface:MergableMerges the values from other collection into this one. Replaces any currently existing value with those from the other set.- Specified by:
mergein interfaceMergable<PropertySet>- Specified by:
mergein interfaceMutablePropertyValueSource
-
getProfileName
Description copied from interface:UserThe name of the user management profile this user was retrieved from.- Specified by:
getProfileNamein interfaceUser
-
setProfileName
Description copied from interface:UserScripting functions allow adding and editing of users, and profile names may need to change.- Specified by:
setProfileNamein interfaceUser
-
getId
Description copied from interface:UserAn opaque identifier that can be used to identify this user. Only valid (unique) within the context of the originating user profile -
getRoles
Description copied from interface:UserReturns all of the roles this user is a has. Not null. -
addRole
Convenience method for scripting to add a new role easily. Only works if user type supports roles.- Parameters:
role- A new role to add. If empty or null, no effect.
-
addRoles
-
removeRole
-
setRoles
-
getContactInfo
Description copied from interface:UserReturns all of the contact information for the user- Specified by:
getContactInfoin interfaceUser
-
addContactInfo
Convenience method for scripting to add a new contactInfo easily. Does not check for duplicates.- Parameters:
contactType- The contact type. This string should match the "contactType" field of a known ContactTypevalue- The actual contact information. For example, phone number or email address
-
addContactInfo
public void addContactInfo(org.python.core.PyDictionary contactDictionary) -
setContactInfo
-
removeContactInfo
-
getScheduleAdjustments
Description copied from interface:UserReturns all of this user's upcoming schedule adjustments- Specified by:
getScheduleAdjustmentsin interfaceUser
-
addScheduleAdjustment
public void addScheduleAdjustment(@Nonnull Date start, @Nonnull Date end, boolean available, @Nullable String note) Convenience method for scripting to add a new schedule adjustment easily. Does not check for duplicates.- Parameters:
start- Date to start the schedule adjustment. Not null.end- Date to end start the schedule adjustment. Not null.available- True if the employee is available during this periodnote- May be null or empty.
-
addScheduleAdjustments
-
removeScheduleAdjustment
-
setScheduleAdjustments
-
getPath
Description copied from interface:UserGenerate an path that unambiguously references this user
-