The FileSystemLoadingType enables software update based on an open file system. This enables the FileSystem based Loading option of 8.3.4.5.

It is illustrated in Figure 45 and formally defined in Table 79.

image048.png

Figure 45 – FileSystemLoadingType

Table 79 – FileSystemLoadingType definition

Attribute

Value

BrowseName

FileSystemLoadingType

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

Other

Subtype of the SoftwareLoadingType

0:HasComponent

Object

0:FileSystem

0:FileDirectoryType

M

0:HasComponent

Method

GetUpdateBehavior

M

0:HasComponent

Method

ValidateFiles

O

Conformance Units

DI SU FileSystem Loading

The FileSystem Object is of type FileDirectoryType as it is defined in OPC 10000-5. It provides access to a hierarchy of directories and files of the device. The structure may be read and written by the Client however the device may restrict this for specific folders or files.

This Method may be used to check the specific update behavior for a set of files. The files are identified by the NodeId of their FileType instance in the FileSystem.

Signature

GetUpdateBehavior(

[in] 0:NodeId[] NodeIds, ,

[out] UpdateBehaviorUpdateBehavior);

Table 80 – GetUpdateBehavior Method Arguments

Argument

Description

NodeIds

NodeIds of the files to install.

UpdateBehavior

Update behavior OptionSet for the files specified by NodeId

Method Result Codes (defined in Call Service)

Result Code

Description

Bad_NotFound

If one or more NodeIds are not found.

Table 81 – GetUpdateBehavior Method AddressSpace definition

Attribute

Value

BrowseName

GetUpdateBehavior

References

NodeClass

BrowseName

DataType

TypeDefinition

Other

0:HasProperty

Variable

InputArguments

0:Argument[]

0:PropertyType

M

0:HasProperty

Variable

OutputArguments

0:Argument[]

0:PropertyType

M

Conformance Units

DI SU FileSystem Loading

This Method may be used to check if the specified set of files are valid and complete for an installation. This should also include dependency checks if appropriate.

Note: In case of Direct-Loading or Cached-Loading these checks should be part of the transfer and this method shall not be supported since it is part of the file transfer (e.g., in CloseAndCommit).

Signature

ValidateFiles(

[in] 0:NodeId[] NodeIds,

[out] 0:Int32 ErrorCode,

[out] 0:LocalizedTextErrorMessage);

Table 82 – ValidateFiles Method Arguments

Argument

Description

NodeIds

NodeIds of the files to validate.

ErrorCode

0 for success or device specific number for validation issues.

ErrorMessage

Message for the user that describes how to resolve the issue.

Method Result Codes (defined in Call Service)

Result Code

Description

Bad_NotFound

If one or more NodeIds are not found.

Table 83 – ValidateFiles Method AddressSpace definition

Attribute

Value

BrowseName

ValidateFiles

References

NodeClass

BrowseName

DataType

TypeDefinition

Other

0:HasProperty

Variable

InputArguments

0:Argument[]

0:PropertyType

M

0:HasProperty

Variable

OutputArguments

0:Argument[]

0:PropertyType

M

Conformance Units

DI SU FileSystem Loading