9.0 KiB
source_files, generated_at, model, schema_version, sha256
| source_files | generated_at | model | schema_version | sha256 | ||
|---|---|---|---|---|---|---|
|
2026-04-17T15:41:14.355961+00:00 | zai-org/GLM-5-FP8 | 1 | b85bddefb00e1aef |
DTS.Common.Utilities Documentation
1. Purpose
This module serves as a common utilities library for the DTS system, providing shared infrastructure for logging, property validation, attribute encoding/decoding, and exception handling. It exists to centralize reusable components that support other DTS applications, including configuration management and diagnostic capabilities. The assembly version is 1.0.0.0, with copyright from 2008.
2. Public Interface
Resources Class (Internal)
Namespace: DTS.Common.Utilities.Properties
Signature:
internal class Resources
A strongly-typed resource class generated by StronglyTypedResourceBuilder for looking up localized strings.
Properties
| Property | Type | Description |
|---|---|---|
ResourceManager |
global::System.Resources.ResourceManager |
Returns the cached ResourceManager instance used by this class. Initialized with base name "DTS.Utilities.Properties.Resources". |
Culture |
global::System.Globalization.CultureInfo |
Overrides the current thread's CurrentUICulture for resource lookups. |
Resource String Properties (Static Getters)
The following static string properties are exposed for use by other components in the assembly:
APILogger Resources:
APILogging_DateTime_Format— Format string"yyyy-MM-dd HH:mm:ss.fff"APILogging_ExceptionFormatter_ExceptionOfTypeOccurredString— Format"{0}An {1}exception of type: {2} occurred"APILogging_ExceptionFormatter_InnerIndicationString—"inner "APILogging_ExceptionFormatter_NonInnerIndicationString— Empty stringAPILogging_ExceptionMessageDisplayString— Format"{0}Message: {1}"APILogging_LevelSeperatorString—"=== "APILogging_LogEntrySeperatorString— Separator line" ========================================"APILogging_LogException_NullWriterDelegateString— Error message for null writer delegateAPILogging_LogString_NullWriterDelegateString— Error message for null writer delegateAPILogging_ModuleNameDisplayString— Format" {0}Module: {1}, Name: {2}"APILogging_StackTraceDisplayString— Format" {0}StackTrace: {1}"
AttributeCoder Resources:
AttributeCoder_AttributeCoder_NullAttributeValueExtractionMethodReferenceStringAttributeCoder_DecodeAttributeExceptionStringAttributeCoder_DecodeAttributesExceptionStringAttributeCoder_DehashAttributeValue_DehashAttributeValueExceptionStringAttributeCoder_DehashAttributeValue_UnableToMatchAttributeValueWithTargetStringAttributeCoder_EncodeAttributeExceptionStringAttributeCoder_NoTypeAttributesFoundOnTargetStringAttributeCoder_UnableToFindTargetTypeMappingString
Exceptional Resources:
Exceptional_GenerateMessageFromExceptionTree_BecauseString—" because"Exceptional_GenerateMessageFromExceptionTree_EndsWithFormatString— Format"{0}{1}"Exceptional_GenerateMessageFromExceptionTree_ErrorTextTerminatorString—"."Exceptional_GenerateMessageFromExceptionTree_MessageFormatString— Format"{0}{1}{2}"
Property Validation Resources:
PowerOfTwoProperty_GetInvalidValueDescription_ProposedValueIsNotPowerOf2StringPowerOfTwoProperty_GetInvalidValueDescription_UnableToGetDescriptionStringPowerOfTwoProperty_IsPowerOf2_UnableToDeterminePowerOf2nessStringPowerOfTwoProperty_IsValidValue_UnableToDetermineValidityStringProperty_GetInvalidValueDescription_CouldNotSetToValueStringProperty_GetInvalidValueDescription_GetDescriptionFailedStringProperty_Value_CouldNotGetValueStringProperty_Value_CouldNotSetValueStringProperty_Value_NotInitializedString
RangeRestrictedDoubleProperty Resources:
RangeRestrictedDoubleProperty_GetInvalidValueDescription_GetDescriptionFailedStringRangeRestrictedDoubleProperty_GetInvalidValueDescription_MaximumDescriptionStringRangeRestrictedDoubleProperty_GetInvalidValueDescription_MinimumDescriptionStringRangeRestrictedDoubleProperty_GetInvalidValueDescription_ValidValueDescriptionStringRangeRestrictedDoubleProperty_IsValidValue_UnableToDetermineValidityStringRangeRestrictedDoubleProperty_MaximumValue_GetValueFailedStringRangeRestrictedDoubleProperty_MaximumValue_SetValueFailedStringRangeRestrictedDoubleProperty_MinimumValue_GetValueFailedStringRangeRestrictedDoubleProperty_MinimumValue_SetValueFailedStringRangeRestrictedDoubleProperty_MinMustBeLessThanMaxString
RangeRestrictedIntProperty Resources:
RangeRestrictedIntProperty_GetInvalidValueDescription_GetDescriptionFailedStringRangeRestrictedIntProperty_GetInvalidValueDescription_MaximumDescriptionStringRangeRestrictedIntProperty_GetInvalidValueDescription_MinimumDescriptionStringRangeRestrictedIntProperty_GetInvalidValueDescription_ValidValueDescriptionStringRangeRestrictedIntProperty_IsValidValue_UnableToDetermineValidityStringRangeRestrictedIntProperty_MaximumValue_GetValueFailedStringRangeRestrictedIntProperty_MaximumValue_SetValueFailedStringRangeRestrictedIntProperty_MinimumValue_GetValueFailedStringRangeRestrictedIntProperty_MinimumValue_SetValueFailedStringRangeRestrictedIntProperty_MinMustBeLessThanMaxString
TextLogger Resources:
TextLogger_AddMessage_LoggerNotRunningStringTextLogger_Dispose_WriteThreadExitFailureStringTextLogger_Dispose_WriteThreadResponseTimeoutStringTextLogger_Start_LoggerAlreadyRunningStringTextLogger_Start_NullEmptyFilenameStringTextLogger_Start_NullEmptyFolderStringTextLogger_Start_WriteThreadResponseTimeoutStringTextLogger_Start_WriteThreadStartFailureStringTextLogger_Stop_LoggerNotRunningStringTextLogger_Stop_WriteThreadResponseTimeoutStringTextLogger_Stop_WriteThreadStopFailureStringTextLogger_TextLogger_EnqueueWriterFailureStringTextLogger_TextLogger_NullCallbackStringTextLogger_TextLogger_WriteThreadStartTimeoutStringTextLogger_Writer_InvalidCommandString
Application Settings Resources:
ApplicationSettings—"applicationSettings"RegistryDataPROExe—"DataPRO.exe"NewSettingsCouldNotBeFoundNewSettingsCouldNotBeProcessed
Generic Resources:
Generic_EncounteredProblemConstructingClassStringGeneric_NullIndicatorString—"<null>"
3. Invariants
Based on the resource strings, the following invariants are enforced by components in this assembly:
-
TextLogger Lifecycle: The logger must be started before adding messages or stopped, and must be stopped before starting again. Methods
Start()andStop()have mutual exclusion requirements. -
TextLogger Parameters: Folder and filename parameters to
Start()cannot be null or blank. -
TextLogger Callback: The callback parameter in the constructor cannot be null.
-
Range-Restricted Properties: Minimum value must be less than or equal to maximum value for both
RangeRestrictedDoublePropertyandRangeRestrictedIntProperty. -
PowerOfTwoProperty: Values must be exact powers of two to be valid.
-
APILogger Writer Delegate: Writer delegate must not be null when calling
LogException()orLogString(). -
AttributeCoder: Attribute value extraction method reference cannot be null.
4. Dependencies
This Module Depends On:
System.ReflectionSystem.Runtime.CompilerServicesSystem.Runtime.InteropServicesSystem.Resources(for ResourceManager)System.Globalization(for CultureInfo)System.CodeDom.CompilerSystem.DiagnosticsSystem.ComponentModel
What Depends On This Module:
Unclear from source alone. The resource strings reference DataPRO.exe and DataPRO.exe.config, suggesting the DataPRO application is a consumer. The module appears designed as a general-purpose utilities library for DTS products.
5. Gotchas
-
Namespace Inconsistency: The
ResourceManageris initialized with base name"DTS.Utilities.Properties.Resources"(note: missing "Common."), while the class resides inDTS.Common.Utilities.Properties. This could cause runtime resource lookup failures if the .resx file location doesn't match. -
Auto-Generated File Warning:
Resources.Designer.csis auto-generated by a tool. Manual changes will be lost upon regeneration. The runtime version noted is4.0.30319.42000with generator version17.0.0.0. -
COM Visibility: The assembly has
ComVisible(false), meaning types are not visible to COM components by default. -
Internal Visibility: The
Resourcesclass is markedinternal, so it's only accessible within this assembly, not to external consumers. -
Historical Context: The copyright date (2008) and the presence of thread-based logging (
TextLogger) with explicit state management suggests this codebase predates modern async/await patterns and may use older threading models.