Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions docs/docs/dotnet/changelog/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,10 @@ This list is subject to change with some items being descoped or deferred to a l
* Enable cross-platform development and build of AvatarScriptLink.NET
* Include added Field and Row objects by default in returned OptionObjects.

## 1.3.0 (T.B.D.)

* Adds support for the new OptionObject2023 object.

## 1.2.0 (2023-06-25)

* Introduce Builder methods for each object to assist with object creation.
Expand Down
Binary file added docs/docs/dotnet/data-model/OptionObject2023.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Additionally, the AvatarScriptLink.NET library expands on the data model to assi

## Avatar ScriptLink

The request and response payloads consist of an OptionObject2015 as defined in your APIs WSDL.
The request and response payloads consist of an OptionObject2023 as defined in your APIs WSDL.

### Standard

Expand All @@ -21,13 +21,14 @@ A standard form in myAvatar will include only a single RowObject containing all
```mermaid
classDiagram
direction LR
class OptionObject2015 {
class OptionObject2023 {
+string EntityID
+double EpisodeNumber
+double ErrorCode
+string ErrorMesg
+string Facility
+List~FormObject~ Forms
+string HistoricUID
+string NamespaceName
+string OptionId
+string OptionStaffId
Expand All @@ -47,6 +48,7 @@ class FormObject {

class RowObject {
+List~FieldObject~ Fields
+string HistoricUID
+string ParentRowId
+string RowAction
+string RowId
Expand All @@ -60,31 +62,32 @@ class FieldObject {
+string Required
}

OptionObject2015 "1" --o "*" FormObject : Forms
OptionObject2023 "1" --o "*" FormObject : Forms
FormObject "1" --o "1" RowObject : CurrentRow
RowObject "1" --o "*" FieldObject : Fields

click OptionObject2015 href "./optionobject2015" "Learn more about the OptionObject2015"
click OptionObject2023 href "./optionobject2023" "Learn more about the OptionObject2023"
click FormObject href "./formobject" "Learn more about the FormObject"
click RowObject href "./rowobject" "Learn more about the RowObject"
click FieldObject href "./fieldobject" "Learn more about the FieldObject"
```

### Multiple Iteration

When a myAvatar form (OptionObject2015) includes a multiple iteration table in one or more of the sections (FormObject), the selected RowObject will be in the CurrentRow and any other rows in OtherRows.
When a myAvatar form (OptionObject2023) includes a multiple iteration table in one or more of the sections (FormObject), the selected RowObject will be in the CurrentRow and any other rows in OtherRows.
Multiple Iteration Tables can never be ther first section (FormObject) on a myAvatar form.

```mermaid
classDiagram
direction LR
class OptionObject2015 {
class OptionObject2023 {
+string EntityID
+double EpisodeNumber
+double ErrorCode
+string ErrorMesg
+string Facility
+List~FormObject~ Forms
+string HistoricUID
+string NamespaceName
+string OptionId
+string OptionStaffId
Expand All @@ -104,6 +107,7 @@ class FormObject {

class RowObject {
+List~FieldObject~ Fields
+string HistoricUID
+string ParentRowId
+string RowAction
+string RowId
Expand All @@ -117,12 +121,12 @@ class FieldObject {
+string Required
}

OptionObject2015 "1" --o "*" FormObject : Forms
OptionObject2023 "1" --o "*" FormObject : Forms
FormObject "1" --o "1" RowObject : CurrentRow
FormObject "1" --o "*" RowObject : OtherRows
RowObject "1" --o "*" FieldObject : Fields

click OptionObject2015 href "./optionobject2015" "Learn more about the OptionObject2015"
click OptionObject2023 href "./optionobject2023" "Learn more about the OptionObject2023"
click FormObject href "./formobject" "Learn more about the FormObject"
click RowObject href "./rowobject" "Learn more about the RowObject"
click FieldObject href "./fieldobject" "Learn more about the FieldObject"
Expand Down Expand Up @@ -166,4 +170,4 @@ The Parameter class helps to parse the delimited parameter string.
The RowAction class is used to help you return valid RowAction values to myAvatar.
These values instruct myAvatar to add, edit, or delete a RowObject upon receipt of the response from the ScriptLink API.

[Learn more](./rowaction)
[Learn more](./rowaction)
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ class FormObject {

class RowObject {
+List~FieldObject~ Fields
+string HistoricUID
+string ParentRowId
+string RowAction
+string RowId
Expand Down Expand Up @@ -141,7 +142,7 @@ click RowObject href "./rowobject" "Learn more about the RowObject"

## Examples

Most implementations would not require working with the FormObject directly, however here is an example that uses the FormObject to create an [OptionObject2015](../optionobject2015) for Unit Testing.
Most implementations would not require working with the FormObject directly, however here is an example that creates a FormObject for Unit Testing.

<Tabs>
<TabItem value="cs" label="C#">
Expand Down Expand Up @@ -291,6 +292,7 @@ class IFormObject {

class RowObject {
+List~FieldObject~ Fields
+string HistoricUID
+string ParentRowId
+string RowAction
+string RowId
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ displayed_sidebar: dotnetSidebar

:::tip Legacy Object

A newer version of this object is now available ([OptionObject2015](../optionobject2015)) and is recommended for new projects.
A newer version of this object is now available ([OptionObject2023](../optionobject2023)) and is recommended for new projects.

:::

Expand Down Expand Up @@ -75,6 +75,7 @@ class OptionObject {
+ToOptionObject() OptionObject
+ToOptionObject2() OptionObject2
+ToOptionObject2015() OptionObject2015
+ToOptionObject2023() OptionObject2023
+ToReturnOptionObject() OptionObject
+ToReturnOptionObject(bool, string) OptionObject
+ToXml() string
Expand Down Expand Up @@ -161,6 +162,7 @@ The following methods are available on the OptionObject to assist with common ta
| ToOptionObject() | Creates a clone of the OptionObject. |
| ToOptionObject2() | Transforms the OptionObject2 to an OptionObject2. |
| ToOptionObject2015() | Transforms the OptionObject2 as an OptionObject2015. |
| ToOptionObject2023() | Transforms the OptionObject2 as an OptionObject2023. |
| ToReturnOptionObject() | Creates an OptionObject with the minimum information required to return. |
| ToReturnOptionObject(int, string) | Creates an OptionObject with the minimum information required to return plus the provided Error Code and Message. |
| ToXml() | Returns a string with all of the contents of the OptionObject formatted as XML. |
Expand All @@ -180,6 +182,7 @@ class OptionObject {
+ToOptionObject() OptionObject
+ToOptionObject2() OptionObject2
+ToOptionObject2015() OptionObject2015
+ToOptionObject2023() OptionObject2023
+ToReturnOptionObject() OptionObject
+ToReturnOptionObject(bool, string) OptionObject
+ToXml() string
Expand Down Expand Up @@ -242,9 +245,10 @@ class OptionObjectBase {
+ToHtmlString() string
+ToHtmlString(bool) string
+ToJson() string
+ToOptionObject()* OptionObject
+ToOptionObject2()* OptionObject2
+ToOptionObject2015()* OptionObject2015
+ToOptionObject() OptionObject
+ToOptionObject2() OptionObject2
+ToOptionObject2015() OptionObject2015
+ToOptionObject2023() OptionObject2023
+ToReturnOptionObject() OptionObjectBase
+ToReturnOptionObject(double, string) OptionObjectBase
+ToXml() string
Expand All @@ -254,6 +258,11 @@ class OptionObjectBase {
}
<<abstract>> OptionObjectBase

class IOptionObject2023 {
string HistoricUID
}
<<interface>> IOptionObject2023

class IOptionObject2015 {
string SessionToken
}
Expand Down Expand Up @@ -292,6 +301,7 @@ OptionObjectBase "1" --o "*" FormObject : Forms
OptionObject --|> OptionObjectBase : inherits
OptionObjectBase --|> IEquatable~OptionObjectBase~ : inherits
OptionObjectBase --|> IOptionObject2015 : inherits
IOptionObject2023 --|> IOptionObject2015 : inherits
IOptionObject2015 --|> IOptionObject2 : inherits
IOptionObject2 --|> IOptionObject : inherits

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ displayed_sidebar: dotnetSidebar

:::tip Legacy Object

A newer version of this object is now available ([OptionObject2015](../optionobject2015)) and is recommended for new projects.
A newer version of this object is now available ([OptionObject2023](../optionobject2023)) and is recommended for new projects.

:::

Expand Down Expand Up @@ -78,6 +78,7 @@ class OptionObject2 {
+ToOptionObject() OptionObject
+ToOptionObject2() OptionObject2
+ToOptionObject2015() OptionObject2015
+ToOptionObject2023() OptionObject2023
+ToReturnOptionObject() OptionObject2
+ToReturnOptionObject(bool, string) OptionObject2
+ToXml() string
Expand Down Expand Up @@ -123,7 +124,7 @@ The following methods are available on the OptionObject2 to assist with common t
| AddFormObject(string, bool) | Creates a [FormObject](../formobject) with specified FormId and adds to the OptionObject2015. The second parameter specifies whether the [FormObject](../formobject) should be flagged as a Multiple Iteration form. |
| AddRowObject(string, [RowObject](../rowobject))| Adds a [RowObject](../rowobject) to the [FormObject](../formobject) with the specified FormId. |
| Builder() | Initializes a builder for constructing a OptionObject2. |
| Clone90 | Clones the OptionObject2. |
| Clone() | Clones the OptionObject2. |
| DeleteRowObject([RowObject](../rowobject)) | Marks a [RowObject"](../rowobject) for deletion. |
| DeleteRowObject(string) | Marks a [RowObject"](../rowobject) for deletion by specified RowId. |
| DisableAllFieldObjects() | Sets all [FieldObjects](../fieldobject) as disabled. |
Expand Down Expand Up @@ -166,6 +167,7 @@ The following methods are available on the OptionObject2 to assist with common t
| ToOptionObject() | Transforms the OptionObject2 to an OptionObject. |
| ToOptionObject2() | Creates a clone of the OptionObject2. |
| ToOptionObject2015() | Transforms the OptionObject2 as an OptionObject2015. |
| ToOptionObject2023() | Transforms the OptionObject2 as an OptionObject2023. |
| ToReturnOptionObject() | Creates an OptionObject2 with the minimum information required to return. |
| ToReturnOptionObject(int, string) | Creates an OptionObject2 with the minimum information required to return plus the provided Error Code and Message. |
| ToXml() | Returns a string with all of the contents of the OptionObject2 formatted as XML. |
Expand All @@ -185,6 +187,7 @@ class OptionObject2{
+ToOptionObject() OptionObject
+ToOptionObject2() OptionObject2
+ToOptionObject2015() OptionObject2015
+ToOptionObject2023() OptionObject2023
+ToReturnOptionObject() OptionObject2015
+ToReturnOptionObject(bool, string) OptionObject2015
+ToXml() string
Expand Down Expand Up @@ -247,9 +250,10 @@ class OptionObjectBase {
+ToHtmlString() string
+ToHtmlString(bool) string
+ToJson() string
+ToOptionObject()* OptionObject
+ToOptionObject2()* OptionObject2
+ToOptionObject2015()* OptionObject2015
+ToOptionObject() OptionObject
+ToOptionObject2() OptionObject2
+ToOptionObject2015() OptionObject2015
+ToOptionObject2023() OptionObject2023
+ToReturnOptionObject() OptionObjectBase
+ToReturnOptionObject(double, string) OptionObjectBase
+ToXml() string
Expand All @@ -259,6 +263,11 @@ class OptionObjectBase {
}
<<abstract>> OptionObjectBase

class IOptionObject2023 {
string HistoricUID
}
<<interface>> IOptionObject2023

class IOptionObject2015 {
string SessionToken
}
Expand Down Expand Up @@ -297,6 +306,7 @@ OptionObjectBase "1" --o "*" FormObject : Forms
OptionObject2 --|> OptionObjectBase : inherits
OptionObjectBase --|> IEquatable~OptionObjectBase~ : inherits
OptionObjectBase --|> IOptionObject2015 : inherits
IOptionObject2023 --|> IOptionObject2015 : inherits
IOptionObject2015 --|> IOptionObject2 : inherits
IOptionObject2 --|> IOptionObject : inherits

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,9 @@ import TabItem from '@theme/TabItem';
The OptionObject2015 holds all of the content of and metadata describing the calling myAvatar form.
AvatarScriptLink.NET adds several utility methods to assist with handlings these objects.

:::note Legacy Support
:::tip Legacy Object

Earlier versions of this object are still supported and available for use in your projects.

* [OptionObject2](../optionobject2)
* [OptionObject](../optionobject)
A newer version of this object is now available ([OptionObject2023](../optionobject2023)) and is recommended for new projects.

:::

Expand Down Expand Up @@ -84,6 +81,7 @@ class OptionObject2015 {
+ToOptionObject() OptionObject
+ToOptionObject2() OptionObject2
+ToOptionObject2015() OptionObject2015
+ToOptionObject2023() OptionObject2023
+ToReturnOptionObject() OptionObject2015
+ToReturnOptionObject(bool, string) OptionObject2015
+ToXml() string
Expand Down Expand Up @@ -173,6 +171,7 @@ The following methods are available on the OptionObject2015 to assist with commo
| ToOptionObject() | Transforms the OptionObject2015 to an OptionObject. |
| ToOptionObject2() | Transforms the OptionObject2015 as an OptionObject2. |
| ToOptionObject2015() | Creates a clone of the OptionObject2015. |
| ToOptionObject2023() | Transforms the OptionObject2015 as an OptionObject2023. |
| ToReturnOptionObject() | Creates an OptionObject2015 with the minimum information required to return. |
| ToReturnOptionObject(int, string) | Creates an OptionObject2015 with the minimum information required to return plus the provided Error Code and Message. |
| ToXml() | Returns a string with all of the contents of the OptionObject2015 formatted as XML. |
Expand Down Expand Up @@ -254,6 +253,7 @@ class OptionObject2015 {
+ToOptionObject() OptionObject
+ToOptionObject2() OptionObject2
+ToOptionObject2015() OptionObject2015
+ToOptionObject2023() OptionObject2023
+ToReturnOptionObject() OptionObject2015
+ToReturnOptionObject(bool, string) OptionObject2015
+ToXml() string
Expand All @@ -266,6 +266,7 @@ class OptionObjectBase {
+string ErrorMesg
+string Facility
+List~FormObject~ Forms
+string HistoricUID
+string NamespaceName
+string OptionId
+string OptionStaffId
Expand Down Expand Up @@ -316,9 +317,10 @@ class OptionObjectBase {
+ToHtmlString() string
+ToHtmlString(bool) string
+ToJson() string
+ToOptionObject()* OptionObject
+ToOptionObject2()* OptionObject2
+ToOptionObject2015()* OptionObject2015
+ToOptionObject() OptionObject
+ToOptionObject2() OptionObject2
+ToOptionObject2015() OptionObject2015
+ToOptionObject2023() OptionObject2023
+ToReturnOptionObject() OptionObjectBase
+ToReturnOptionObject(double, string) OptionObjectBase
+ToXml() string
Expand All @@ -328,6 +330,11 @@ class OptionObjectBase {
}
<<abstract>> OptionObjectBase

class IOptionObject2023 {
string HistoricUID
}
<<interface>> IOptionObject2023

class IOptionObject2015 {
string SessionToken
}
Expand Down Expand Up @@ -369,6 +376,7 @@ OptionObjectBase "1" --o "*" FormObject : Forms
OptionObject2015 --|> OptionObjectBase : inherits
OptionObjectBase --|> IEquatable~OptionObjectBase~ : inherits
OptionObjectBase --|> IOptionObject2015 : inherits
IOptionObject2023 --|> IOptionObject2015 : inherits
IOptionObject2015 --|> IOptionObject2 : inherits
IOptionObject2 --|> IOptionObject : inherits

Expand Down
Loading