User Tools

Site Tools


thinkgeo.mapsuite.routing.routingsource

This is an old revision of the document!


ThinkGeo.MapSuite.Routing.RoutingSource

<!– Class –> This class is the base class for all types of RoutingSource.

Remarks

The RoutingSource class is where all other types of RoutingSource are inherited from. It provides the base set of functionality.As it is abstract, you will need to implement the GetRouteSegmentByFeatureIdCoreCore method. In this method, you are repsonsible for creating a route segment based on a feature ID.There is a RtgRouteSource class we already inherited from this class. It is based on a .rtg file and a .rtx file.

Inheritance Hierarchy

Members Summary

Public Constructors

Name Parameters DeclaringType Summary

Protected Constructors

Name Parameters DeclaringType Summary
Protected MethodRoutingSource This is the default constructor for the abstract RoutingSource class.

Public Methods

Name Parameters DeclaringType Summary
Public MethodAddRouteSegment RouteSegment This method adds a new RouteSegment to an existing transaction.
Public MethodBeginTransaction This method starts a new transaction if the RoutingSource allows editing
Public MethodClose This method closes the RoutingSource and releases any resources it was using.
Public MethodCommitTransaction This method will commit the existing transaction to its underlying source of data.
Public MethodDeleteRouteSegment String This method deletes a RouteSegment from an existing transaction.
Public MethodEquals Object Object
Public MethodGetHashCode Object
Public MethodGetRouteSegmentByFeatureId String This method returns a RouteSegment by providing its ID in the RoutingSource.
Public MethodGetRouteSegmentCount This method returns the count of the number of records in this RoutingSource.
Public MethodGetRouteSegmentsNearestTo BaseShape, FeatureSource, GeographyUnit, Int32 This method returns a user defined number of Route Segments that are closest to the TargetShape.
Public MethodGetType Object
Public MethodOpen This method opens the RoutingSource so that it is initialized and ready to use.
Public MethodRollbackTransaction This method will cancel an existing transaction. It will free up the internal memory cache of any InternalFeatures added, updated or deleted.
Public MethodToString Object
Public MethodUpdateRouteSegment RouteSegment This method deletes a RouteSegment from an existing transaction.

Protected Methods

Name Parameters DeclaringType Summary
Protected MethodBeginTransactionCore
Protected MethodCloseCore This method closes the RoutingSource and releases any resources it was using.
Protected MethodCommitTransactionCore RoutingTransactionBuffer This method will commit the existing transaction to its underlying source of data.
Protected MethodFinalize Object
Protected MethodGetRouteSegmentByFeatureIdCore String This method returns a RouteSegment by providing its ID in the RoutingSource.
Protected MethodGetRouteSegmentCountCore This method returns the count of the number of records in this RoutingSource.
Protected MethodGetRouteSegmentsNearestToCore BaseShape, FeatureSource, GeographyUnit, Int32 This method returns a user defined number of Route Segments that are closest to the TargetShape.
Protected MethodMemberwiseClone Object
Protected MethodOnCommittedTransaction RoutingCommittedTransactionEventArgs This method allows you to raise the CommittedTransaction event from a derived class.
Protected MethodOnCommittingTransaction RoutingCommittingTransactionEventArgs This method allows you to raise the CommittingTransaction event from a derived class.
Protected MethodOpenCore This method opens the RoutingSource so that it is initialized and ready to use.
Protected MethodRollbackTransactionCore

Public Properties

Name Return DeclaringType Summary
Public PropertyIsEditable Boolean This property returns whether the RoutingSource allows edits or is read-only.
Public PropertyIsInTransaction Boolean This property returns true if the RoutingSource is in a transaction and false if it is not.
Public PropertyIsOpen Boolean This property returns true if the RoutingSource is open and false if it is not.

Protected Properties

Name Return DeclaringType Summary

Public Events

Name Event Arguments DeclaringType Summary
Public EventCommittedTransaction RoutingCommittedTransactionEventArgs This event is raised after the CommitTransaction and the CommitTransactionCore are called and allows you access to the TransactionBuffer and the TransactionResults object before CommitTransaction method is returned.
Public EventCommittingTransaction RoutingCommittingTransactionEventArgs This event is raised after the CommitTransaction method is called, but before the CommitTransactionCore is called. This allows you access to the TransactionBuffer before the transaction is committed. It also allows you to cancel the pending commit of the transaction.

Public Constructors

Protected Constructors

RoutingSource()

This is the default constructor for the abstract RoutingSource class.

Remarks

As this method is protected, you may only add code to this method if you override it from an inheriting class.

Parameters

Name Type Description

Go Back

Public Methods

AddRouteSegment(RouteSegment)

This method adds a new RouteSegment to an existing transaction.

Remarks

This method adds a new RouteSegment to an existing transaction. You will need to ensure that you have started a transaction by calling BeginTransaction.The Transaction SystemYou start by calling BeginTransaction. This allocates a collection of in-memory change buffers that are used to store changes until you commit the transaction. So, for example, when you call the Add, Delete or Update method, the changes to the RouteSegment are stored in memory only. If for any reason you choose to abandon the transaction, you can call RollbackTransaction at any time and the in-memory buffer will be deleted and the changes will be lost. When you are ready to commit the transaction, you call CommitTransaction and the collections of changes are then passed to the CommitTransactionCore method and the implementer of the specific RoutingSource is responsible for integrating your changes into the underlying RoutingSource.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description
routeSegment RouteSegment<!– ThinkGeo.MapSuite.Routing.RouteSegment –> This parameter represents the routeSegment that will be added to the transaction.

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

BeginTransaction()

This method starts a new transaction if the RoutingSource allows editing

Remarks

This method is used to start a transaction, assuming that the RoutingSource allows editing. There are some additional prerequisites to beginning a transaction, such as ensuring that a transaction is not already in progress. You must also be sure that the RoutingSource has been opened.The Transaction SystemYou start by calling BeginTransaction. This allocates a collection of in-memory change buffers that are used to store changes until you commit the transaction. So, for example, when you call the Add, Delete or Update method, the changes to the RouteSegment are stored in memory only. If for any reason you choose to abandon the transaction, you can call RollbackTransaction at any time and the in-memory buffer will be deleted and the changes will be lost. When you are ready to commit the transaction, you call CommitTransaction and the collections of changes are then passed to the CommitTransactionCore method and the implementer of the specific RoutingSource is responsible for integrating your changes into the underlying RoutingSource.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

Close()

This method closes the RoutingSource and releases any resources it was using.

Remarks

This method is the concrete wrapper for the abstract method CloseCore. The Close method plays an important role in the life cycle of the RoutingSource. It may be called after drawing to release any memory and other resources that were allocated since the Open method was called.If you override the Core version of this method, it is recommended that you take the following things into account: This method may be called multiple times, so we suggest you write the method so that a call to a closed RoutingSource is ignored and does not generate an error. We also suggest that in the Close you free all resources that have been opened. Remember that the object will not be destroyed, but will be re-opened possibly in the near future.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

CommitTransaction()

This method will commit the existing transaction to its underlying source of data.

Remarks

This method is the concrete wrapper for the virtual method CommitTransactionCore. As this is the concrete version, the real work is done in the Core version of the method. It will commit the existing transaction to its underlying source of data. It will then pass back the results of the commit, including any error(s) received. Lastly, it will free up the internal memory cache of any RoutSegments added, updated or deleted. You will need to ensure that you have started a transaction by calling BeginTransaction.

Return Value

Return Type Description
TransactionResult<!– ThinkGeo.MapSuite.Core.TransactionResult –> The returned decimalDegreesValue of this method is a TransactionResult class, which gives you the status of the transaction you just committed. It includes how many of the updates, adds, and deletes were successful and any errors that were encountered during the committing of the transaction.

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

DeleteRouteSegment(String)

This method deletes a RouteSegment from an existing transaction.

Remarks

This method delete a RouteSegment from an existing transaction. You will need to ensure that you have started a transaction by calling BeginTransaction.The Transaction SystemYou start by calling BeginTransaction. This allocates a collection of in-memory change buffers that are used to store changes until you commit the transaction. So, for example, when you call the Add, Delete or Update method, the changes to the RouteSegment are stored in memory only. If for any reason you choose to abandon the transaction, you can call RollbackTransaction at any time and the in-memory buffer will be deleted and the changes will be lost. When you are ready to commit the transaction, you call CommitTransaction and the collections of changes are then passed to the CommitTransactionCore method and the implementer of the specific RoutingSource is responsible for integrating your changes into the underlying RoutingSource.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description
id String<!– System.String –> This string is the fature Id of the RouteSegment in the RoutingSource you wish to delete.

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

Equals(Object)

Remarks

Return Value

Return Type Description
Boolean<!– System.Boolean –>

Parameters

Name Type Description
obj Object<!– System.Object –>

<!– System.Object –> Go Back

GetHashCode()

Remarks

Return Value

Return Type Description
Int32<!– System.Int32 –>

Parameters

Name Type Description

<!– System.Object –> Go Back

GetRouteSegmentByFeatureId(String)

This method returns a RouteSegment by providing its ID in the RoutingSource.

Remarks

Return Value

Return Type Description
RouteSegment<!– ThinkGeo.MapSuite.Routing.RouteSegment –> A RouteSegment based on a specific ID.

Parameters

Name Type Description
featureId String<!– System.String –> This parameter is the feature ID that uniquely identifies it in the RoutingSource.

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

GetRouteSegmentCount()

This method returns the count of the number of records in this RoutingSource.

Remarks

This method is the concrete wrapper for the virtual method GetRouteSegmentCountCore. It will return whatever is returned by the GetRouteSegmentCountCore method, along with any additions or subtractions made if you are in a transaction and that transaction is configured to be live. To determine what the default implementation of the virtual GetRouteSegmentCountCore method is, please see the documentation for it.The default implementation of GetRouteSegmentCountCore returns 0. We strongly recommend that you provide your own implementation for this method.

Return Value

Return Type Description
Int32<!– System.Int32 –> This method returns the count of the number of records in this RoutingSource.

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

GetRouteSegmentsNearestTo(BaseShape, FeatureSource, GeographyUnit, Int32)

This method returns a user defined number of Route Segments that are closest to the TargetShape.

Remarks

This method returns a user defined number of Route Segments that are closest to the TargetShape. It is important to note that the TargetShape and the FeatureSource must use the same unit, such as feet or meters. If they do not, then the results will not be predictable or correct.

Return Value

Return Type Description
Collection<RouteSegment><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.Routing.RouteSegment} –> This method returns a user defined number of Route Segments that are closest to the TargetShape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.Core.BaseShape –> This parameter is the shape you want to find Route Segments close to.
featureSource FeatureSource<!– ThinkGeo.MapSuite.Core.FeatureSource –> This parameter defines the FeatureSource that is used to get information of RouteSegments
unitOfFeatureSource GeographyUnit<!– ThinkGeo.MapSuite.Core.GeographyUnit –> This parameter is the unit of measurement that the TargetShape and the FeatureSource are in, such as feet, meters, etc.
numberOfItemsToFind Int32<!– System.Int32 –> This parameter defines how many close Route Segments to find around the TargetShape.

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

GetType()

Remarks

Return Value

Return Type Description
Type<!– System.Type –>

Parameters

Name Type Description

<!– System.Object –> Go Back

Open()

This method opens the RoutingSource so that it is initialized and ready to use.

Remarks

This method is the concrete wrapper for the abstract method OpenCore. The Open method plays an important role, as it is responsible for initializing the RoutingSource. Most methods on the RoutingSource will throw an exception if the state of the RoutingSource is not opened. When the map draws each layer, it will open the RoutingSource as one of its first steps, then after it is finished drawing with that layer it will close it. In this way we are sure to release all resources used by the RoutingSource.When implementing this method, consider opening files for file-based sources, connecting to databases in the database-based sources and so on. You will get a chance to close these in the Close method of the RoutingSource.As this is a concrete public method that wraps a Core method, we reserve the right to add events and other logic to pre- or post-process data returned by the Core version of the method. In this way, we leave our framework open on our end, but also allow you the developer to extend our logic to suit your needs. If you have questions about this, please contact our support team as we would be happy to work with you on extending our framework.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

RollbackTransaction()

This method will cancel an existing transaction. It will free up the internal memory cache of any InternalFeatures added, updated or deleted.

Remarks

This method will cancel an existing transaction. It will free up the internal memory cache of any RoutingSegments added, updated or deleted. You will need to ensure that you have started a transaction by calling BeginTransaction.The Transaction SystemYou start by calling BeginTransaction. This allocates a collection of in-memory change buffers that are used to store changes until you commit the transaction. So, for example, when you call the Add, Delete or Update method, the changes to the RouteSegment are stored in memory only. If for any reason you choose to abandon the transaction, you can call RollbackTransaction at any time and the in-memory buffer will be deleted and the changes will be lost. When you are ready to commit the transaction, you call CommitTransaction and the collections of changes are then passed to the CommitTransactionCore method and the implementer of the specific RoutingSource is responsible for integrating your changes into the underlying RoutingSource.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

ToString()

Remarks

Return Value

Return Type Description
String<!– System.String –>

Parameters

Name Type Description

<!– System.Object –> Go Back

UpdateRouteSegment(RouteSegment)

This method deletes a RouteSegment from an existing transaction.

Remarks

This method update a RouteSegment to an existing transaction. You will need to ensure that you have started a transaction by calling BeginTransaction.The Transaction SystemYou start by calling BeginTransaction. This allocates a collection of in-memory change buffers that are used to store changes until you commit the transaction. So, for example, when you call the Add, Delete or Update method, the changes to the RouteSegment are stored in memory only. If for any reason you choose to abandon the transaction, you can call RollbackTransaction at any time and the in-memory buffer will be deleted and the changes will be lost. When you are ready to commit the transaction, you call CommitTransaction and the collections of changes are then passed to the CommitTransactionCore method and the implementer of the specific RoutingSource is responsible for integrating your changes into the underlying RoutingSource.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description
routeSegment RouteSegment<!– ThinkGeo.MapSuite.Routing.RouteSegment –> The RouteSegment that will be updated to an existing transaction

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

Protected Methods

BeginTransactionCore()

Remarks

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

CloseCore()

This method closes the RoutingSource and releases any resources it was using.

Remarks

This protected virtual method is called from the concrete public method Close. The Close method plays an important role in the life cycle of the RoutingSource. It may be called after drawing to release any memory and other resources that were allocated since the Open method was called.If you override this method, it is recommended that you take the following things into account: This method may be called multiple times, so we suggest you write the method so that that a call to a closed RoutingSource is ignored and does not generate an error. We also suggest that in the Close you free all resources that have been opened. Remember that the object will not be destroyed, but will be re-opened possibly in the near future.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

CommitTransactionCore(RoutingTransactionBuffer)

This method will commit the existing transaction to its underlying source of data.

Remarks

As this is the concrete version, the real work is done in the Core version of the method. It will commit the existing transaction to its underlying source of data. It will then pass back the results of the commit, including any error(s) received. Lastly, it will free up the internal memory cache of any RoutSegments added, updated or deleted. You will need to ensure that you have started a transaction by calling BeginTransaction.

Return Value

Return Type Description
TransactionResult<!– ThinkGeo.MapSuite.Core.TransactionResult –> The returned decimalDegreesValue of this method is a TransactionResult class, which gives you the status of the transaction you just committed. It includes how many of the updates, adds, and deletes were successful and any errors that were encountered during the committing of the transaction.

Parameters

Name Type Description
transactionBuffer RoutingTransactionBuffer<!– ThinkGeo.MapSuite.Routing.RoutingTransactionBuffer –>

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

Finalize()

Remarks

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description

<!– System.Object –> Go Back

GetRouteSegmentByFeatureIdCore(String)

This method returns a RouteSegment by providing its ID in the RoutingSource.

Remarks

Return Value

Return Type Description
RouteSegment<!– ThinkGeo.MapSuite.Routing.RouteSegment –> A RouteSegment based on a specific ID.

Parameters

Name Type Description
featureId String<!– System.String –> This parameter is the feature ID that uniquely identifies it in the RoutingSource.

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

GetRouteSegmentCountCore()

This method returns the count of the number of records in this RoutingSource.

Remarks

This protected virtual method is called from the concrete public method GetCount. It does not take into account any transaction activity, as this is the responsibility of the concrete public method GetRouteSegmentCount. This way, as a developer, if you choose to override this method you do not have to consider transactions at all.The default implementation of GetRouteSegmentCountCore returns 0. We strongly recommend that you provide your own implementation for this method.

Return Value

Return Type Description
Int32<!– System.Int32 –> This method returns the count of the number of records in this RoutingSource.

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

GetRouteSegmentsNearestToCore(BaseShape, FeatureSource, GeographyUnit, Int32)

This method returns a user defined number of Route Segments that are closest to the TargetShape.

Remarks

This method returns a user defined number of Route Segments that are closest to the TargetShape. It is important to note that the TargetShape and the FeatureSource must use the same unit, such as feet or meters. If they do not, then the results will not be predictable or correct.

Return Value

Return Type Description
Collection<RouteSegment><!– System.Collections.ObjectModel.Collection{ThinkGeo.MapSuite.Routing.RouteSegment} –> This method returns a user defined number of Route Segments that are closest to the TargetShape.

Parameters

Name Type Description
targetShape BaseShape<!– ThinkGeo.MapSuite.Core.BaseShape –> This parameter is the shape you want to find Route Segments close to.
featureSource FeatureSource<!– ThinkGeo.MapSuite.Core.FeatureSource –> This parameter defines the FeatureSource that is used to get information of RouteSegments
unitOfFeatureSource GeographyUnit<!– ThinkGeo.MapSuite.Core.GeographyUnit –> This parameter is the unit of measurement that the TargetShape and the FeatureSource are in, such as feet, meters, etc.
numberOfItemsToFind Int32<!– System.Int32 –> This parameter defines how many close Route Segments to find around the TargetShape.

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

MemberwiseClone()

Remarks

Return Value

Return Type Description
Object<!– System.Object –>

Parameters

Name Type Description

<!– System.Object –> Go Back

OnCommittedTransaction(RoutingCommittedTransactionEventArgs)

This method allows you to raise the CommittedTransaction event from a derived class.

Remarks

You can call this method from a derived class to enable it to raise the CommittedTransaction event. This may be useful if you plan to extend the RoutingSource and you need access to the event.Details on the event:This event is raised after the CommitTransactionCore is called and allows you access to the TransactionBuffer and the TransactionResults object before CommitTransaction method is returned.With this event, you can analyze the results of the transaction and do any cleanup code necessary. In the event some of the records did not commit, you can handle these items here. The TransactionResults object is passed out of the CommitTransaction method so you could analyze it then; however, this is the only place where you have access to both the TransactionResults object and the TransactionBuffer object at the same time. These are useful together to try and determine what went wrong and possibly try and re-commit them.At the time of this event, you will technically be out of the current transaction.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description
e RoutingCommittedTransactionEventArgs<!– ThinkGeo.MapSuite.Routing.RoutingCommittedTransactionEventArgs –> This parameter is the event arguments which define the parameters passed to the recipient of the event.

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

OnCommittingTransaction(RoutingCommittingTransactionEventArgs)

This method allows you to raise the CommittingTransaction event from a derived class.

Remarks

You can call this method from a derived class to enable it to raise the CommittingTransaction event. This may be useful if you plan to extend the RoutingSource and you need access to the event.Details on the event:This event is raised before the CommitTransactionCore is called and allows you access to the TransactionBuffer before the transaction is committed. It also allows you to cancel the pending transaction. The TransactionBuffer is the object that stores all of the pending transactions and is accessible through this event to allow you either add, remove or modify transactions.In the event that you cancel the CommitTransaction method, the transaction remains intact and you will still be editing. This makes it a nice place to possibly check for connectivity before the TransactionCore code is run, which is where the records are actually committed. Calling the RollBackTransaction method is the only way to permanently cancel a pending transaction without committing it.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description
e RoutingCommittingTransactionEventArgs<!– ThinkGeo.MapSuite.Routing.RoutingCommittingTransactionEventArgs –> This parameter is the event arguments which define the parameters passed to the recipient of the event.

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

OpenCore()

This method opens the RoutingSource so that it is initialized and ready to use.

Remarks

This protected virtual method is called from the concrete public method Open. The Open method plays an important role, as it is responsible for initializing the RoutingSource. Most methods on the RoutingSource will throw an exception if the state of the RoutingSource is not opened. When the map draws each layer, it will open the RoutingSource as one of its first steps, then after it is finished drawing with that layer it will close it. In this way we are sure to release all resources used by the RoutingSource.When implementing this virtual method, consider opening files for file-based sources, connecting to databases in the database-based sources and so on. You will get a chance to close these in the Close method of the RoutingSource.

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

RollbackTransactionCore()

Remarks

Return Value

Return Type Description
Void<!– System.Void –>

Parameters

Name Type Description

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

Public Properties

IsEditable

This property returns whether the RoutingSource allows edits or is read-only.

Remarks

This property is useful to check if a specific RoutingSource accepts editing. If you call BeginTransaction and this property is false, then an exception will be raised.For developers who are creating or extending a RoutingSource, it is expected that you override this virtual method if the new RoutingSource you are creating allows edits.

Return Value

Return Type
Boolean<!– System.Boolean –>

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

IsInTransaction

This property returns true if the RoutingSource is in a transaction and false if it is not.

Remarks

To enter a transaction, you must first call the BeginTransaction method of the RoutingSource. It is possible that some RoutingSource are read-only and do not allow edits. To end a transaction, you must either call CommitTransaction or RollbackTransaction.

Return Value

Return Type
Boolean<!– System.Boolean –>

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

IsOpen

This property returns true if the RoutingSource is open and false if it is not.

Remarks

Various methods on the RoutingSource require that it be in an open state. If one of those methods is called when the state is not open, then the method will throw an exception. To enter the open state, you must call the RoutingSource's Open method.

Return Value

Return Type
Boolean<!– System.Boolean –>

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

Protected Properties

Public Events

CommittedTransaction

This event is raised after the CommitTransaction and the CommitTransactionCore are called and allows you access to the TransactionBuffer and the TransactionResults object before CommitTransaction method is returned.

Remarks

This event is raised after the CommitTransactionCore is called and allows you access to the TransactionBuffer and the TransactionResults object before CommitTransaction method is returned.With this event, you can analyse the results of the transaction and do any cleanup code necessary. In the event some of the records did not commit, you can handle those items here. The TransactionResults object is passed out of the CommitTransaction method so you could analyze it then; however, this is the only place where you have access to both the TransactionResults object and the TransactionBuffer object at the same time. These are useful together to try and determine what went wrong and possibly try and re-commit them.At the time of this event you will technically be out of the current transaction.

Event Arguments

Event Arguments
RoutingCommittedTransactionEventArgs<!– ThinkGeo.MapSuite.Routing.RoutingCommittedTransactionEventArgs –>

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

CommittingTransaction

This event is raised after the CommitTransaction method is called, but before the CommitTransactionCore is called. This allows you access to the TransactionBuffer before the transaction is committed. It also allows you to cancel the pending commit of the transaction.

Remarks

This event is raised before the CommitTransactionCore is called and allows you access to the TransactionBuffer before the transaction is committed. It also allows you to cancel the pending transaction. The TransactionBuffer is the object that stores all of the pending transactions and is accessible through this event to allow you to either add, remove or modify transactions.In the event that you cancel the CommitTransaction method, the transaction remains intact and you will still be editing. This makes it a nice place to possibly check for connectivity before the TransactionCore code is run, which is where the records are actually committed. Calling the RollBackTransaction method is the only way to permanently cancel a pending transaction without committing it.

Event Arguments

Event Arguments
RoutingCommittingTransactionEventArgs<!– ThinkGeo.MapSuite.Routing.RoutingCommittingTransactionEventArgs –>

<!– ThinkGeo.MapSuite.Routing.RoutingSource –> Go Back

NOTOC MapSuiteRouting ThinkGeo.MapSuite.Routing UpdateDocumentation

thinkgeo.mapsuite.routing.routingsource.1440040134.txt.gz · Last modified: 2015/09/11 03:31 (external edit)