TBoldAbstractController¶
Bold-internal class that implements the behaviour of single- and multilinks
Unit: BoldSystem
Declaration¶
Hierarchy¶
- TObject
TBoldMemoryManagedObject- TBoldAbstractController
- Direct subclasses
- TBoldAbstractObjectReferenceController
- TBoldListController
Description¶
This is a Bold-internal class who's subclasses implement the behaviour of single- and multilinks.
Properties¶
| Name | Summary | Notes |
|---|---|---|
| OwningMember | The member the controller is controlling | read-only |
| StreamName | read-only |
OwningMember¶
The member the controller is controlling
StreamName¶
Methods¶
| Name | Summary | Notes |
|---|---|---|
| AssertedLocatorForID | protected | |
| AssertIntegrity | Assert integrity of links. | virtual |
| Changed | Call Changed on owning member. | protected |
| DbFetchClassForMember | protected | |
| DbFetchOwningMember | Call DbFetch on owning member. | protected |
| EndModify | Call EndModify on owning member. | protected |
| GetControllerForMember | Get controller for member. | protected |
| GetOwningMember | Getter for property OwningMember | protected, abstract |
| GetStreamName | Get stream name | protected, abstract |
| LinkTo | Add Locator from referred locators in owning member. | virtual |
| LocatorForID | Get ensured locator for id. | protected |
| NewValueInOptimisticLocking | Get new value for member in optimistic locking area | protected |
| PreChange | Call PreChange on owning member. | protected |
| ProxyInterface | Bold-internal equivalent of QueryInterface | virtual |
| StartModify | Call StartModify on owning member. | protected |
| Unlink | Remove Locator from referred locators in owning member. | virtual |
AssertedLocatorForID¶
AssertIntegrity¶
It the case where OwningMember is an AssociationEnd, this method will assert it's integrity, i.e. check that the links are bidirectional, and that the link objects are correct. The method will return true if everything is OK, otherwise it will raise an exception. It only returns a value in order to be useable in an Assert().
Changed¶
This method just calls OwningMember.Changed. It allows the subclasses to call the method, without making it public on TBoldMember.
DbFetchClassForMember¶
DbFetchOwningMember¶
This method just calls OwningMember.DbFetch. It allows the subclasses to call the method, without making it public on TBoldMember.
EndModify¶
This method just calls OwningMember.DbFetch. It allows the subclasses to call the method, without making it public on TBoldMember.
GetControllerForMember¶
This method gets the Controller for member.
GetOwningMember¶
This is the Get-method for OwningMember. It is overridden in the concrete subclasses.
GetStreamName¶
Get stream name
LinkTo¶
procedure LinkTo(NewLocator: TBoldObjectLocator; updateOrderNo: Boolean; Mode: TBoldLinkUnlinkMode); virtual;
This method will add
Locatorto the locators referred to by OwningMember. For a controller for a TBoldObjectList this means adding the locator from the list, for a TBoldObjectReference this means setting the reference toLocator. The meaning ofModeis explained in TBoldLinkUnlinkMode.
LocatorForID¶
Use this method to get a ensured locator for ObjectId in the TBoldSystem OwningMember is part of.
NewValueInOptimisticLocking¶
If the optimistic locking area doesn't already contain a value for OwningMember then a value is created and returned. If a value already exists, the function returns **nil**
PreChange¶
This method just calls OwningMember.PreChange. It allows the subclasses to call the method, without making it public on TBoldMember.
ProxyInterface¶
function ProxyInterface(const IId: TGUID; Mode: TBoldDomainElementProxyMode; out Obj): Boolean; virtual;
Bold-internal equivalent of QueryInterface
StartModify¶
This method just calls OwningMember.StartModify. It allows the subclasses to call the method, without making it public on TBoldMember.
Unlink¶
This method will remove Locator from the locators referred to by OwningMember. For a controller for a TBoldObjectList this means removing the locator from the list, for a TBoldObjectReference this means setting the reference to **nil**. The meaning of Mode is explained in TBoldLinkUnlinkMode.
Generated from the Bold 4.0 help (Help/BfD.chm) by Tools/chm2mkdocs.py; member lists reflect Bold 4.0, see the source for members added since.