AcUtils
A high performance abstraction layer for AccuRev
Enumerations
Enums

Enumerations

enum  AcUtils.ParamFileCopy {
  AcUtils.ParamFileCopy.NoParamFileCopy , AcUtils.ParamFileCopy.CopyParmFileTrigTarget , AcUtils.ParamFileCopy.CopyParmFileExitSuccess , AcUtils.ParamFileCopy.CopyParmFileExitFailure ,
  AcUtils.ParamFileCopy.CopyParmFileContinue
}
 For trigger development, debugging, and troubleshooting. More...
 
enum  AcUtils.OnlyExcept { AcUtils.OnlyExcept.Only , AcUtils.OnlyExcept.Except }
 Lock applies to the principal only or to all except the principal. More...
 
enum  AcUtils.PropKind { AcUtils.PropKind.principal , AcUtils.PropKind.stream }
 Type of the property, either principal or stream. More...
 
enum  AcUtils.StreamType {
  AcUtils.StreamType.unknown , AcUtils.StreamType.normal , AcUtils.StreamType.dynamic , AcUtils.StreamType.regular ,
  AcUtils.StreamType.workspace , AcUtils.StreamType.snapshot , AcUtils.StreamType.passthru , AcUtils.StreamType.passthrough ,
  AcUtils.StreamType.gated , AcUtils.StreamType.staging
}
 The type of stream. More...
 
enum  AcUtils.ElementType {
  AcUtils.ElementType.unknown , AcUtils.ElementType.dir , AcUtils.ElementType.text , AcUtils.ElementType.binary ,
  AcUtils.ElementType.ptext , AcUtils.ElementType.elink , AcUtils.ElementType.slink , AcUtils.ElementType.unsupported
}
 Indicates the element's type. By default, AccuRev determines the element type for a newly created version automatically. More...
 
enum  AcUtils.CaseSensitivity { AcUtils.CaseSensitivity.insensitive , AcUtils.CaseSensitivity.sensitive }
 Indicates whether the depot is case sensitive or insensitive (defined when the depot is created). More...
 
enum  AcUtils.LockKind { AcUtils.LockKind.from , AcUtils.LockKind.to , AcUtils.LockKind.all }
 The kind of AccuRev lock. More...
 
enum  AcUtils.PrinType { AcUtils.PrinType.group , AcUtils.PrinType.user , AcUtils.PrinType.none }
 Whether the lock is for a user or a group. More...
 
enum  AcUtils.PermType { AcUtils.PermType.group , AcUtils.PermType.user , AcUtils.PermType.builtin }
 Whether AppliesTo is the principal name for a group, user, or builtin type. More...
 
enum  AcUtils.PermRights { AcUtils.PermRights.none , AcUtils.PermRights.all }
 Whether permission rights to Name in AppliesTo is all or none. More...
 
enum  AcUtils.PermKind { AcUtils.PermKind.depot , AcUtils.PermKind.stream }
 Whether permissions pertain to depots or streams. Set when the permission is created by the setacl command. More...
 
enum  AcUtils.PrinStatus { AcUtils.PrinStatus.Unknown , AcUtils.PrinStatus.Inactive , AcUtils.PrinStatus.Active }
 Whether the principal is active or inactive in AccuRev. More...
 
enum  AcUtils.RuleKind {
  AcUtils.RuleKind.unknown , AcUtils.RuleKind.clear , AcUtils.RuleKind.incl , AcUtils.RuleKind.incldo ,
  AcUtils.RuleKind.excl
}
 The kind of AccuRev rule. More...
 
enum  AcUtils.WsType { AcUtils.WsType.Standard , AcUtils.WsType.RefTree , AcUtils.WsType.Exclusive , AcUtils.WsType.Anchor }
 Workspace type the user created. These numeric values are passed by AccuRev and converted to our enum type. More...
 
enum  AcUtils.WsEOL { AcUtils.WsEOL.Platform , AcUtils.WsEOL.Unix , AcUtils.WsEOL.Windows }
 End-of-line character used by the workspace. These numeric values are passed by AccuRev and converted to our enum type. More...
 
enum  AcUtils.RealVirtual { AcUtils.RealVirtual.Real , AcUtils.RealVirtual.Virtual }
 Use to specify real or virtual values. More...
 

Detailed Description

Enumeration Type Documentation

Indicates whether the depot is case sensitive or insensitive (defined when the depot is created).

Enumerator
insensitive 

The depot is case insensitive.

sensitive 

The depot is case sensitive.

Definition at line 33 of file AcDepots.cs.

Indicates the element's type. By default, AccuRev determines the element type for a newly created version automatically.

AccuNote:
A defect exists where the XML elem_type attribute value can be the string "* unknown *".
AccuNote:
(external)(elink) elements are grayed out in the Mac GUI and cannot be added to the depot. Defect 1101826.
See also
acxType extension method
Enumerator
unknown 

Should not occur normally except for noted defect.

dir 

1: The element is a folder.

text 

2: The element is a text file.

binary 

3: The element is a binary file.

ptext 

4: Text files that are handled the same as binary files with no end-of-line manipulation.

elink 

5: An element-link.

slink 

6: A symbolic-link.

unsupported 

99: An unsupported type.

Examples:
EvilTwins.cs, and XLinked.cs.

Definition at line 35 of file Stat.cs.

The kind of AccuRev lock.

Enumerator
from 

A from lock on the stream.

to 

A to lock on the stream.

all 

Both to and from lock on the stream.

Examples:
LockStreams.cs.

Definition at line 30 of file AcLocks.cs.

Lock applies to the principal only or to all except the principal.

Enumerator
Only 

Lock applies to the principal only.

Except 

Lock applies to all except the principal.

Definition at line 64 of file AcLocks.cs.

For trigger development, debugging, and troubleshooting.

Use to copy the XML param data sent to the trigger by AccuRev to %LOCALAPPDATA%\AcTools\Param\<trigger-command-principal-timestamp>.xml on the machine where the trigger process runs. The AcTools\Param folder is created if not already there. Example file: server_preop_trig-promote-barnyrd-2013429445183.xml.

The following triggers cause the command to succeed or fail based on the trigger's program return value: zero (0) to have the command succeed, non-zero to have it fail (repository remains unchanged).

  • pre-create-trig
  • pre-keep-trig
  • pre-promote-trig
  • server_preop_trig
  • server_admin_trig
  • server_auth_trig

Example <trigger>.exe.config file appSettings entry and client code:
<appSettings>
...
<add key="ParamFileCopy" value="CopyParmFileExitSuccess" />
</appSettings>
private static ParamFileCopy _paramFileCopy;
string pfc = ConfigurationManager.AppSettings["ParamFileCopy"]; // get value from server_admin_trig.exe.config
_paramFileCopy = String.IsNullOrEmpty(pfc) ?
ParamFileCopy.NoParamFileCopy : (ParamFileCopy)Enum.Parse(typeof(ParamFileCopy), pfc);
...
_xmlParamFile = args[0]; // trigger XML param file passed to this trigger by AccuRev
if (!TriggerParamXML.init(_xmlParamFile)) // initialize TriggerParamXML class static data members
return 1; // error already logged. non-zero return causes the operation to fail
// save the XML param file content to our file in %LOCALAPPDATA%\AcTools\Param
AcDebug.paramFileCopy(_xmlParamFile, _paramFileCopy, TriggerParamXML.Trigger,
TriggerParamXML.Principal, TriggerParamXML.AcCommand);
Enumerator
NoParamFileCopy 

Do not create copies of the XML param data. The trigger and AccuRev operation execute normally.

CopyParmFileTrigTarget 

Create copies of the XML param data for select users and triggers if a matching entry is found in TriggersTarget.xml located on the AccuRevTriggers network share. The trigger and AccuRev operation execute normally.

CopyParmFileExitSuccess 

Run the trigger just long enough to create copies of the XML param data and then immediately terminate it with a zero (0) return value (Success) thus allowing the operation to succeed (where applicable).

CopyParmFileExitFailure 

Run the trigger just long enough to create copies of the XML param data and then immediately terminate it with a one (1) return value (Failure) thus causing the operation to fail (where applicable).

CopyParmFileContinue 

Create copies of the XML param data with no early trigger termination. The trigger and AccuRev operation execute normally.

Definition at line 69 of file AcDebug.cs.

Whether permissions pertain to depots or streams. Set when the permission is created by the setacl command.

Enumerator
depot 

Permissions pertain to depots.

stream 

Permissions pertain to streams.

Definition at line 60 of file AcPermissions.cs.

Whether permission rights to Name in AppliesTo is all or none.

Enumerator
none 

AppliesTo does not have permission to access Name.

all 

AppliesTo has permission to access Name.

Definition at line 46 of file AcPermissions.cs.

Whether AppliesTo is the principal name for a group, user, or builtin type.

Enumerator
group 

AppliesTo is the principal name for a group.

user 

AppliesTo is the principal name for a user.

builtin 

AppliesTo is authuser or anyuser.

Definition at line 30 of file AcPermissions.cs.

Whether the principal is active or inactive in AccuRev.

Enumerator
Unknown 

The principal status is unknown.

Inactive 

The principal is inactive.

Active 

The principal is active.

Definition at line 28 of file AcPrincipal.cs.

Whether the lock is for a user or a group.

Enumerator
group 

Lock applies to a group.

user 

Lock applies to a user.

none 

Lock does not apply to a principal.

Definition at line 46 of file AcLocks.cs.

Type of the property, either principal or stream.

Enumerator
principal 

The property kind is a principal.

stream 

The property kind is a stream.

Definition at line 28 of file AcProperties.cs.

Use to specify real or virtual values.

Enumerator
Real 

Real value(s).

Virtual 

Virtual value(s).

Definition at line 30 of file Extensions.cs.

The kind of AccuRev rule.

Enumerator
unknown 

This should never occur.

clear 

Remove an include/exclude rule.

incl 

The kind of rule is to include elements in a workspace or stream.

incldo 

The kind of rule is to include a directory and not its contents in a workspace or stream

excl 

The kind of rule is to exclude elements from a workspace or stream.

Definition at line 31 of file AcRules.cs.

The type of stream.

AccuNote:
AccuRev is not consistent in its designation of stream types. The show streams command returns passthrough and normal while the server_admin_trig receives passthru and regular and the server_master_trig receives dynamic. We cover them all here in one enum.
Enumerator
unknown 

A defect where "* unknown *" is sent.

normal 

A dynamic stream.

dynamic 

A dynamic stream.

regular 

A dynamic stream.

workspace 

A workspace stream.

snapshot 

A snapshot stream.

passthru 

A passthrough stream.

passthrough 

A passthrough stream.

gated 

A gated stream.

staging 

A staging stream.

Examples:
ActiveWSpaces.cs, and ShowRules.cs.

Definition at line 33 of file AcStreams.cs.

End-of-line character used by the workspace. These numeric values are passed by AccuRev and converted to our enum type.

Enumerator
Platform 

0: Recognize the host OS to determine the EOL.

Unix 

1: Always use Unix EOL.

Windows 

2: Always use Windows EOL.

Definition at line 49 of file AcWorkspaces.cs.

Workspace type the user created. These numeric values are passed by AccuRev and converted to our enum type.

Enumerator
Standard 

1: A standard workspace.

RefTree 

3: A reference tree.

Exclusive 

9: Type of file locking is exclusive.

Anchor 

17: Type of file locking is anchor required.

Definition at line 31 of file AcWorkspaces.cs.