pub struct ODRecord { /* private fields */ }ODRecord only.Expand description
This class is used to read, update and modify records within the directory
This class is used to read, update and modify records within the directory. outError is optional parameter, nil can be passed if error details are not needed.
See also Apple’s documentation
Implementations§
Source§impl ODRecord
impl ODRecord
Sourcepub unsafe fn setNodeCredentials_password_error(
&self,
in_username: Option<&NSString>,
in_password: Option<&NSString>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
pub unsafe fn setNodeCredentials_password_error( &self, in_username: Option<&NSString>, in_password: Option<&NSString>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
Similar to calling -[ODNode setCredentials:] except credentials are only set for this particular record’s node
Sets the credentials if necessary on the ODNode referenced by this ODRecord. Very similar to calling -[ODNode setCredentials:] except other records referencing the underlying node will not get authenticated, therefore inadvertant changes cannot occur. If all records referencing a particular node need to be updated, then use -[ODNode setCredentials:] on the original node instead. If the node is already authenticated with the same name and password, it will be a NOOP call. The original ODNode held by an ODRecord will be released when the credentials are changed for the connection associated with the record. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_usernamemight not allowNone.in_passwordmight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn setNodeCredentialsWithRecordType_authenticationType_authenticationItems_continueItems_context_error(
&self,
in_record_type: Option<&ODRecordType>,
in_type: Option<&ODAuthenticationType>,
in_items: Option<&NSArray>,
out_items: Option<&mut Option<Retained<NSArray>>>,
out_context: Option<&mut Option<Retained<AnyObject>>>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
Available on crate features CFOpenDirectory and CFOpenDirectoryConstants only.
pub unsafe fn setNodeCredentialsWithRecordType_authenticationType_authenticationItems_continueItems_context_error( &self, in_record_type: Option<&ODRecordType>, in_type: Option<&ODAuthenticationType>, in_items: Option<&NSArray>, out_items: Option<&mut Option<Retained<NSArray>>>, out_context: Option<&mut Option<Retained<AnyObject>>>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
CFOpenDirectory and CFOpenDirectoryConstants only.Similar to calling -[ODNode setCredentialsWithRecordType:] except credentials are only set for this particular record’s node
Allows the caller to use other types of authentications that are available in OpenDirectory, that may require response-request loops, etc. Not all OD plugins will support this call, look for kODErrorCredentialsMethodNotSupported in outError. Same behavior as ODRecordSetNodeCredentials. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_record_typemight not allowNone.in_typemight not allowNone.in_itemsgeneric should be of the correct type.in_itemsmight not allowNone.out_itemsgeneric should be of the correct type.out_itemsmight not allowNone.out_contextshould be of the correct type.out_contextmight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn setNodeCredentialsUsingKerberosCache_error(
&self,
in_cache_name: Option<&NSString>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
👎Deprecated
pub unsafe fn setNodeCredentialsUsingKerberosCache_error( &self, in_cache_name: Option<&NSString>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
Unsupported method.
Unsupported method.
§Safety
in_cache_namemight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn passwordPolicyAndReturnError(
&self,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> Option<Retained<NSDictionary>>
👎Deprecated: use effectivePoliciesAndReturnError
pub unsafe fn passwordPolicyAndReturnError( &self, out_error: Option<&mut Option<Retained<NSError>>>, ) -> Option<Retained<NSDictionary>>
Returns a dictionary containing the password policy for the record if available.
Returns a dictionary containing the password policy for the record if available. If no policy for record nil will be returned. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
out_error might not allow None.
Sourcepub unsafe fn verifyPassword_error(
&self,
in_password: Option<&NSString>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
pub unsafe fn verifyPassword_error( &self, in_password: Option<&NSString>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
Verifies the password provided is valid for the record
Verifies the password provided is valid for the record. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_passwordmight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn verifyExtendedWithAuthenticationType_authenticationItems_continueItems_context_error(
&self,
in_type: Option<&ODAuthenticationType>,
in_items: Option<&NSArray>,
out_items: Option<&mut Option<Retained<NSArray>>>,
out_context: Option<&mut Option<Retained<AnyObject>>>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
Available on crate features CFOpenDirectory and CFOpenDirectoryConstants only.
pub unsafe fn verifyExtendedWithAuthenticationType_authenticationItems_continueItems_context_error( &self, in_type: Option<&ODAuthenticationType>, in_items: Option<&NSArray>, out_items: Option<&mut Option<Retained<NSArray>>>, out_context: Option<&mut Option<Retained<AnyObject>>>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
CFOpenDirectory and CFOpenDirectoryConstants only.Allows use of other OpenDirectory types of authentications
Allows the caller to use other types of authentications that are available in OpenDirectory, that may require response-request loops, etc. A bool with the result of the operation. If it fails, outError can be checked for more specific error. Some ODNodes may not support the call so an error code of kODErrorCredentialsMethodNotSupported may be returned. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_typemight not allowNone.in_itemsgeneric should be of the correct type.in_itemsmight not allowNone.out_itemsgeneric should be of the correct type.out_itemsmight not allowNone.out_contextshould be of the correct type.out_contextmight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn changePassword_toPassword_error(
&self,
old_password: Option<&NSString>,
new_password: Option<&NSString>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
pub unsafe fn changePassword_toPassword_error( &self, old_password: Option<&NSString>, new_password: Option<&NSString>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
Changes the password for a record
Changes the password for a record. The oldPassword can be nil if password is being set assuming the appropriate privileges are in place. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
old_passwordmight not allowNone.new_passwordmight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn synchronizeAndReturnError(
&self,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
pub unsafe fn synchronizeAndReturnError( &self, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
Synchronizes the record from the Directory in order to get current data and/or commit pending changes
Synchronizes the record from the Directory in order to get current data. Any previously fetched attributes will be re-fetch from the Directory. This will not re-fetch the entire record, unless the entire record has been accessed. Additionally, any changes made to the record will be committed to the directory, if the node does not do immediate commits. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
out_error might not allow None.
Sourcepub unsafe fn recordType(&self) -> Retained<NSString>
pub unsafe fn recordType(&self) -> Retained<NSString>
Type of the record.
The record type.
Sourcepub unsafe fn recordName(&self) -> Retained<NSString>
pub unsafe fn recordName(&self) -> Retained<NSString>
Name of the record.
This is the official record name.
Sourcepub unsafe fn recordDetailsForAttributes_error(
&self,
in_attributes: Option<&NSArray>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> Option<Retained<NSDictionary>>
pub unsafe fn recordDetailsForAttributes_error( &self, in_attributes: Option<&NSArray>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> Option<Retained<NSDictionary>>
Returns the attributes and values in the form of a key-value pair set.
Returns the attributes and values in the form of a key-value pair set for this record. The key is a NSString of the attribute name (e.g., kODAttributeTypeRecordName, etc.) and the value is an NSArray of either NSData or NSString depending on the type of data. Binary data will be returned as NSData. If nil is passed, then all currently retrieved attributes will be returned. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_attributesgeneric should be of the correct type.in_attributesmight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn valuesForAttribute_error(
&self,
in_attribute: Option<&ODAttributeType>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> Option<Retained<NSArray>>
Available on crate features CFOpenDirectory and CFOpenDirectoryConstants only.
pub unsafe fn valuesForAttribute_error( &self, in_attribute: Option<&ODAttributeType>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> Option<Retained<NSArray>>
CFOpenDirectory and CFOpenDirectoryConstants only.Returns an NSArray of NSString or NSData values of the attribute
Returns an NSArray of NSString or NSData depending on the type of data. Binary data will be returned as NSData. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_attributemight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn setValue_forAttribute_error(
&self,
in_value_or_values: Option<&AnyObject>,
in_attribute: Option<&ODAttributeType>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
Available on crate features CFOpenDirectory and CFOpenDirectoryConstants only.
pub unsafe fn setValue_forAttribute_error( &self, in_value_or_values: Option<&AnyObject>, in_attribute: Option<&ODAttributeType>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
CFOpenDirectory and CFOpenDirectoryConstants only.Will take a mixture of NSData or NSString or an NSArray of either type when setting the values of an attribute
Will take a mixture of NSData or NSString or an NSArray of either type when setting the values of an attribute. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_value_or_valuesshould be of the correct type.in_value_or_valuesmight not allowNone.in_attributemight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn removeValuesForAttribute_error(
&self,
in_attribute: Option<&ODAttributeType>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
Available on crate features CFOpenDirectory and CFOpenDirectoryConstants only.
pub unsafe fn removeValuesForAttribute_error( &self, in_attribute: Option<&ODAttributeType>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
CFOpenDirectory and CFOpenDirectoryConstants only.Removes all the values for an attribute.
Removes all the values for an attribute. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_attributemight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn addValue_toAttribute_error(
&self,
in_value: Option<&AnyObject>,
in_attribute: Option<&ODAttributeType>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
Available on crate features CFOpenDirectory and CFOpenDirectoryConstants only.
pub unsafe fn addValue_toAttribute_error( &self, in_value: Option<&AnyObject>, in_attribute: Option<&ODAttributeType>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
CFOpenDirectory and CFOpenDirectoryConstants only.Will add a value to an attribute
Will add a value to an attribute. Should be either NSData or NSString type. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_valueshould be of the correct type.in_valuemight not allowNone.in_attributemight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn removeValue_fromAttribute_error(
&self,
in_value: Option<&AnyObject>,
in_attribute: Option<&ODAttributeType>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
Available on crate features CFOpenDirectory and CFOpenDirectoryConstants only.
pub unsafe fn removeValue_fromAttribute_error( &self, in_value: Option<&AnyObject>, in_attribute: Option<&ODAttributeType>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
CFOpenDirectory and CFOpenDirectoryConstants only.Will remove a value from an attribute
Will remove a value from an attribute. Should be either NSData or NSString type. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_valueshould be of the correct type.in_valuemight not allowNone.in_attributemight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn deleteRecordAndReturnError(
&self,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
pub unsafe fn deleteRecordAndReturnError( &self, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
Deletes the record from the node and invalidates the record.
Deletes the record from the node and invalidates the record. The ODRecord should be released after deletion. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
out_error might not allow None.
Sourcepub unsafe fn policiesAndReturnError(
&self,
error: Option<&mut Option<Retained<NSError>>>,
) -> Option<Retained<NSDictionary>>
👎Deprecated: use accountPoliciesAndReturnError:
pub unsafe fn policiesAndReturnError( &self, error: Option<&mut Option<Retained<NSError>>>, ) -> Option<Retained<NSDictionary>>
This will copy any policies configured for the record.
This will copy any policies configured for the record.
§Safety
error might not allow None.
Sourcepub unsafe fn effectivePoliciesAndReturnError(
&self,
error: Option<&mut Option<Retained<NSError>>>,
) -> Option<Retained<NSDictionary>>
👎Deprecated: use authenticationAllowedAndReturnError: and similar methods
pub unsafe fn effectivePoliciesAndReturnError( &self, error: Option<&mut Option<Retained<NSError>>>, ) -> Option<Retained<NSDictionary>>
This will copy any policies configured for the record.
This will copy any policies configured for the record.
§Safety
error might not allow None.
Sourcepub unsafe fn supportedPoliciesAndReturnError(
&self,
error: Option<&mut Option<Retained<NSError>>>,
) -> Option<Retained<NSDictionary>>
👎Deprecated
pub unsafe fn supportedPoliciesAndReturnError( &self, error: Option<&mut Option<Retained<NSError>>>, ) -> Option<Retained<NSDictionary>>
This will return a dictionary of supported policies.
This will return a dictionary of supported policies, if appropriate, the value will be the maximum value allowed for the policy in question. For example, if password history is available, it will state how much history is supported.
§Safety
error might not allow None.
Sourcepub unsafe fn setPolicies_error(
&self,
policies: Option<&NSDictionary>,
error: Option<&mut Option<Retained<NSError>>>,
) -> bool
👎Deprecated: use setAccountPolicies:error:
pub unsafe fn setPolicies_error( &self, policies: Option<&NSDictionary>, error: Option<&mut Option<Retained<NSError>>>, ) -> bool
This will set the policy for the record.
This will set the policy for the record. Policies are evaluated in combination with node-level policies.
§Safety
policiesgeneric should be of the correct type.policiesmight not allowNone.errormight not allowNone.
Sourcepub unsafe fn setPolicy_value_error(
&self,
policy: Option<&ODPolicyType>,
value: Option<&AnyObject>,
error: Option<&mut Option<Retained<NSError>>>,
) -> bool
👎Deprecated: use addAccountPolicy:toCategory:error:Available on crate features CFOpenDirectory and CFOpenDirectoryConstants only.
pub unsafe fn setPolicy_value_error( &self, policy: Option<&ODPolicyType>, value: Option<&AnyObject>, error: Option<&mut Option<Retained<NSError>>>, ) -> bool
CFOpenDirectory and CFOpenDirectoryConstants only.This will set a specific policy setting for the record.
This will set a specific policy setting for the record.
§Safety
policymight not allowNone.valueshould be of the correct type.valuemight not allowNone.errormight not allowNone.
Sourcepub unsafe fn removePolicy_error(
&self,
policy: Option<&ODPolicyType>,
error: Option<&mut Option<Retained<NSError>>>,
) -> bool
👎Deprecated: use removeAccountPolicy:fromCategory:error:Available on crate features CFOpenDirectory and CFOpenDirectoryConstants only.
pub unsafe fn removePolicy_error( &self, policy: Option<&ODPolicyType>, error: Option<&mut Option<Retained<NSError>>>, ) -> bool
CFOpenDirectory and CFOpenDirectoryConstants only.This will remove a specific policy setting from the record.
This will remove a specific policy setting from the record.
§Safety
policymight not allowNone.errormight not allowNone.
Sourcepub unsafe fn addAccountPolicy_toCategory_error(
&self,
policy: Option<&NSDictionary>,
category: Option<&ODPolicyCategoryType>,
error: Option<&mut Option<Retained<NSError>>>,
) -> bool
Available on crate features CFOpenDirectory and CFOpenDirectoryConstants only.
pub unsafe fn addAccountPolicy_toCategory_error( &self, policy: Option<&NSDictionary>, category: Option<&ODPolicyCategoryType>, error: Option<&mut Option<Retained<NSError>>>, ) -> bool
CFOpenDirectory and CFOpenDirectoryConstants only.This will add a specific policy to the specific category for the record.
This will add a specific policy to the specific category for the record. The specified policy will be applied, in combination with any node policies, to the specified record when policies are evaluated.
Parameter policy: a dictionary containing the specific policy to be added.
The dictionary may contain the following keys:
kODPolicyKeyIdentifier a required key identifying the policy.
kODPolicyKeyParameters an optional key containing a dictionary of
parameters that can be used for informational purposes or in
the policy format string.
kODPolicyKeyContent a required key specifying the policy,
from which a predicate will be created for evaluating
the policy.
Parameter category: a valid ODPolicyCategoryType to which the policy will be added.
Parameter error: an optional NSError reference for error details.
Returns: a BOOL which signifies if the policy addition succeeded, otherwise error is set.
§Safety
policygeneric should be of the correct type.policymight not allowNone.categorymight not allowNone.errormight not allowNone.
Sourcepub unsafe fn removeAccountPolicy_fromCategory_error(
&self,
policy: Option<&NSDictionary>,
category: Option<&ODPolicyCategoryType>,
error: Option<&mut Option<Retained<NSError>>>,
) -> bool
Available on crate features CFOpenDirectory and CFOpenDirectoryConstants only.
pub unsafe fn removeAccountPolicy_fromCategory_error( &self, policy: Option<&NSDictionary>, category: Option<&ODPolicyCategoryType>, error: Option<&mut Option<Retained<NSError>>>, ) -> bool
CFOpenDirectory and CFOpenDirectoryConstants only.This will remove a specific policy from the specific category for the record.
This will remove a specific policy from the specific category for the record.
Parameter policy: a dictionary containing the specific policy to be
removed, with the same format as described in addAccountPolicy.
Parameter category: a valid ODPolicyCategoryType from which the policy will be removed.
Parameter error: an optional NSError reference for error details.
Returns: a BOOL which signifies if the policy removal succeeded, otherwise error is set.
§Safety
policygeneric should be of the correct type.policymight not allowNone.categorymight not allowNone.errormight not allowNone.
Sourcepub unsafe fn setAccountPolicies_error(
&self,
policies: Option<&NSDictionary>,
error: Option<&mut Option<Retained<NSError>>>,
) -> bool
pub unsafe fn setAccountPolicies_error( &self, policies: Option<&NSDictionary>, error: Option<&mut Option<Retained<NSError>>>, ) -> bool
This will set the policies for the record.
This will set the policies for the record, replacing any existing policies. All of the policies in the set will be applied to the record when policies are evaluated.
Parameter policies: a dictionary containing all of the policies to be set
for the node. The dictionary may contain the following keys:
kODPolicyCategoryAuthentication an optional key with a value
of an array of policy dictionaries that specify when
authentications should be allowed.
kODPolicyCategoryPasswordContent an optional key with a
value of an array of policy dictionaries the specify the
required content of passwords.
kODPolicyCategoryPasswordChange an optional key with a value
of an array of policy dictionaries that specify when
passwords are required to be changed.
Parameter error: an optional NSError reference for error details.
Returns: a BOOL which signifies if the policy set succeeded, otherwise error is set.
§Safety
policiesgeneric should be of the correct type.policiesmight not allowNone.errormight not allowNone.
Sourcepub unsafe fn accountPoliciesAndReturnError(
&self,
error: Option<&mut Option<Retained<NSError>>>,
) -> Option<Retained<NSDictionary>>
pub unsafe fn accountPoliciesAndReturnError( &self, error: Option<&mut Option<Retained<NSError>>>, ) -> Option<Retained<NSDictionary>>
Returns a dictionary containing any policies configured for the record.
Returns a dictionary containing any policies configured for the record. Does not include any policies set for the node.
Returns a dictionary containing any policies configured for the record.
Parameter error: an optional NSError reference for error details.
Returns: a NSDictionary containing all currently set policies. The format of the dictionary is the same as described in setAccountPolicies.
§Safety
error might not allow None.
Sourcepub unsafe fn authenticationAllowedAndReturnError(
&self,
error: Option<&mut Option<Retained<NSError>>>,
) -> bool
pub unsafe fn authenticationAllowedAndReturnError( &self, error: Option<&mut Option<Retained<NSError>>>, ) -> bool
Determines if policies allow the account to authenticate.
Determines if policies allow the account to authenticate. Authentication and password change policies are evaluated. Record-level and node-level policies are evaluated in combination, with record-level taking precedence over node-level policies. The failure of any single policy will deny the authentication.
This check is only definitive at the time it was requested. The policy or the environment could change before the authentication is actually requested. Errors from the authentication request should be consulted.
It is not necessary to call this function when calling verifyPassword or verifyPasswordExtended since those methods perform the same policy evaluation.
Parameter error: an optional NSError reference for error details.
Returns: a bool which signifies if the authentication is allowed, otherwise error is set.
§Safety
error might not allow None.
Sourcepub unsafe fn passwordChangeAllowed_error(
&self,
new_password: Option<&NSString>,
error: Option<&mut Option<Retained<NSError>>>,
) -> bool
pub unsafe fn passwordChangeAllowed_error( &self, new_password: Option<&NSString>, error: Option<&mut Option<Retained<NSError>>>, ) -> bool
Determines if policies allow the password change.
Determines if policies allow the password change. Password content policies are evaluated. Record-level and node-level policies are evaluated in combination, with record-level taking precedence over node-level policies. The failure of any single policy will deny the password change.
This check is only definitive at the time it was requested. The policy or the environment could change before the password change is actually requested. Errors from the password change request should be consulted.
Parameter newPassword: contains the password to be evaluated.
Parameter error: an optional NSError reference for error details.
Returns: a BOOL which signifies if the password change is allowed, otherwise error is set.
§Safety
new_passwordmight not allowNone.errormight not allowNone.
Sourcepub unsafe fn willPasswordExpire(&self, will_expire_in: u64) -> bool
pub unsafe fn willPasswordExpire(&self, will_expire_in: u64) -> bool
Determines if the password will expire within the specified time.
Determines if the password will expire (i.e. need to be changed) between now and the specified number of seconds in the future. Password change policies are evaluated. Record-level and node-level policies are evaluated in combination, with record-level taking precedence over node-level policies.
Parameter willExpireIn: the number of seconds from the current time to be
used as the upper-bound for the password expiration period.
Returns: a BOOL which signifies if the password will expire within the specified time.
Sourcepub unsafe fn willAuthenticationsExpire(&self, will_expire_in: u64) -> bool
pub unsafe fn willAuthenticationsExpire(&self, will_expire_in: u64) -> bool
Determines if authentications will expire within the specified time.
Determines if authentications will expire (i.e. session and/or account expires) between now and the specified number of seconds in the future. Authentication policies are evaluated. Record-level and node-level policies are evaluated in combination, with record-level taking precedence over node-level policies.
Parameter willExpireIn: the number of seconds from the current time to be
used as the upper-bound for the authentication expiration period.
Returns: a BOOL which signifies if authentications will expire within the specified time.
Sourcepub unsafe fn secondsUntilPasswordExpires(&self) -> i64
pub unsafe fn secondsUntilPasswordExpires(&self) -> i64
Determines how many seconds until the password expires.
Determines how many seconds until the password expires (i.e. needs changing). Password change policies are evaluated. Record-level and node-level policies are evaluated in combination, with record-level taking precedence over node-level policies.
Returns: the number of seconds until the password expires. If multiple policies will cause the password to expire, the soonest expiration time is returned. If already expired, kODExpirationTimeExpired is returned. If there are no password change policies, kODExpirationTimeNeverExpires is returned.
Sourcepub unsafe fn secondsUntilAuthenticationsExpire(&self) -> i64
pub unsafe fn secondsUntilAuthenticationsExpire(&self) -> i64
Determines how many seconds until authentications expire.
Determines how many seconds until authentications expire (i.e. session and/or account expires). Authentication policies are evaluated. Record-level and node-level policies are evaluated in combination, with record-level taking precedence over node-level policies.
Returns: the number of seconds until authentications expire. If multiple policies will cause authentications to expire, the soonest expiration time is returned. If already expired, kODExpirationTimeExpired is returned. If there are no authentication policies controlling expiration, kODExpirationTimeNeverExpires is returned.
Source§impl ODRecord
ODRecordGroupExtensions.
impl ODRecord
ODRecordGroupExtensions.
Record extensions for checking and modifying group membership.
Sourcepub unsafe fn addMemberRecord_error(
&self,
in_record: Option<&ODRecord>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
pub unsafe fn addMemberRecord_error( &self, in_record: Option<&ODRecord>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
Will add the record as a member of the group record
Will add the record as a member of the group record. An error will be returned if the record is not a group record. Additionally, if the member record is not an appropriate type allowed as part of a group an error will be returned. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_recordmight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn removeMemberRecord_error(
&self,
in_record: Option<&ODRecord>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
pub unsafe fn removeMemberRecord_error( &self, in_record: Option<&ODRecord>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
Will remove the record as a member from the group record
Will remove the record as a member from the group record. An error will be returned if the record is not a group record. Additionally, if the member record is not an appropriate type allowed as part of a group an error will be returned. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_recordmight not allowNone.out_errormight not allowNone.
Sourcepub unsafe fn isMemberRecord_error(
&self,
in_record: Option<&ODRecord>,
out_error: Option<&mut Option<Retained<NSError>>>,
) -> bool
pub unsafe fn isMemberRecord_error( &self, in_record: Option<&ODRecord>, out_error: Option<&mut Option<Retained<NSError>>>, ) -> bool
Will use membership APIs to determine if inRecord is a member of the group
Will use membership APIs to determine if inRecord is a member of the group. If the receiving object is not a group then NO will still be returned. outError is optional parameter, nil can be passed if error details are not needed.
§Safety
in_recordmight not allowNone.out_errormight not allowNone.
Methods from Deref<Target = NSObject>§
Sourcepub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
pub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
Handle messages the object doesn’t recognize.
See Apple’s documentation for details.
Methods from Deref<Target = AnyObject>§
Sourcepub fn class(&self) -> &'static AnyClass
pub fn class(&self) -> &'static AnyClass
Dynamically find the class of this object.
§Panics
May panic if the object is invalid (which may be the case for objects
returned from unavailable init/new methods).
§Example
Check that an instance of NSObject has the precise class NSObject.
use objc2::ClassType;
use objc2::runtime::NSObject;
let obj = NSObject::new();
assert_eq!(obj.class(), NSObject::class());Sourcepub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
👎Deprecated: this is difficult to use correctly, use Ivar::load instead.
pub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
Ivar::load instead.Use Ivar::load instead.
§Safety
The object must have an instance variable with the given name, and it
must be of type T.
See Ivar::load_ptr for details surrounding this.
Sourcepub fn downcast_ref<T>(&self) -> Option<&T>where
T: DowncastTarget,
pub fn downcast_ref<T>(&self) -> Option<&T>where
T: DowncastTarget,
Attempt to downcast the object to a class of type T.
This is the reference-variant. Use Retained::downcast if you want
to convert a retained object to another type.
§Mutable classes
Some classes have immutable and mutable variants, such as NSString
and NSMutableString.
When some Objective-C API signature says it gives you an immutable class, it generally expects you to not mutate that, even though it may technically be mutable “under the hood”.
So using this method to convert a NSString to a NSMutableString,
while not unsound, is generally frowned upon unless you created the
string yourself, or the API explicitly documents the string to be
mutable.
See Apple’s documentation on mutability and on
isKindOfClass: for more details.
§Generic classes
Objective-C generics are called “lightweight generics”, and that’s because they aren’t exposed in the runtime. This makes it impossible to safely downcast to generic collections, so this is disallowed by this method.
You can, however, safely downcast to generic collections where all the
type-parameters are AnyObject.
§Panics
This works internally by calling isKindOfClass:. That means that the
object must have the instance method of that name, and an exception
will be thrown (if CoreFoundation is linked) or the process will abort
if that is not the case. In the vast majority of cases, you don’t need
to worry about this, since both root objects NSObject and
NSProxy implement this method.
§Examples
Cast an NSString back and forth from NSObject.
use objc2::rc::Retained;
use objc2_foundation::{NSObject, NSString};
let obj: Retained<NSObject> = NSString::new().into_super();
let string = obj.downcast_ref::<NSString>().unwrap();
// Or with `downcast`, if we do not need the object afterwards
let string = obj.downcast::<NSString>().unwrap();Try (and fail) to cast an NSObject to an NSString.
use objc2_foundation::{NSObject, NSString};
let obj = NSObject::new();
assert!(obj.downcast_ref::<NSString>().is_none());Try to cast to an array of strings.
use objc2_foundation::{NSArray, NSObject, NSString};
let arr = NSArray::from_retained_slice(&[NSObject::new()]);
// This is invalid and doesn't type check.
let arr = arr.downcast_ref::<NSArray<NSString>>();This fails to compile, since it would require enumerating over the array to ensure that each element is of the desired type, which is a performance pitfall.
Downcast when processing each element instead.
use objc2_foundation::{NSArray, NSObject, NSString};
let arr = NSArray::from_retained_slice(&[NSObject::new()]);
for elem in arr {
if let Some(data) = elem.downcast_ref::<NSString>() {
// handle `data`
}
}Trait Implementations§
Source§impl ClassType for ODRecord
impl ClassType for ODRecord
Source§const NAME: &'static str = "ODRecord"
const NAME: &'static str = "ODRecord"
Source§type ThreadKind = <<ODRecord as ClassType>::Super as ClassType>::ThreadKind
type ThreadKind = <<ODRecord as ClassType>::Super as ClassType>::ThreadKind
Source§impl NSObjectProtocol for ODRecord
impl NSObjectProtocol for ODRecord
Source§fn isEqual(&self, other: Option<&AnyObject>) -> bool
fn isEqual(&self, other: Option<&AnyObject>) -> bool
Source§fn hash(&self) -> usize
fn hash(&self) -> usize
Source§fn isKindOfClass(&self, cls: &AnyClass) -> bool
fn isKindOfClass(&self, cls: &AnyClass) -> bool
Source§fn is_kind_of<T>(&self) -> bool
fn is_kind_of<T>(&self) -> bool
isKindOfClass directly, or cast your objects with AnyObject::downcast_ref