namespace Tizen.Maps
{
/// <summary>
- /// Base class for map service request
+ /// Base class for a map service request.
/// </summary>
- /// <since_tizen>3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
/// <typeparam name="T"></typeparam>
public abstract class MapServiceRequest<T> : IDisposable
{
- protected TaskCompletionSource<IEnumerable<T>> _requestTask;
- protected string errMessage;
- protected int? _requestID;
- protected ServiceRequestType _type;
+ internal TaskCompletionSource<IEnumerable<T>> _requestTask;
+ internal string errMessage;
+ internal int? _requestID;
+ internal ServiceRequestType _type;
internal Action startExecutionAction;
internal Interop.ErrorCode errorCode;
/// <summary>
/// Creates a map service request.
/// </summary>
- /// <param name="service">map service object</param>
- /// <param name="type">Request type</param>
+ /// <param name="service">Map service object.</param>
+ /// <param name="type">Request type.</param>
internal MapServiceRequest(MapService service, ServiceRequestType type)
{
_service = service;
}
/// <summary>
- /// Sends a request to map service provider.
+ /// Destroy the MapServiceRequest object.
/// </summary>
- /// <since_tizen>3</since_tizen>
- /// <returns>Response from map service provider</returns>
+ ~MapServiceRequest()
+ {
+ Dispose(false);
+ }
+
+ /// <summary>
+ /// Sends a request to the map service provider.
+ /// </summary>
+ /// <since_tizen> 3 </since_tizen>
+ /// <returns>Response from the map service provider.</returns>
/// <privilege>http://tizen.org/privilege/mapservice</privilege>
/// <privilege>http://tizen.org/privilege/internet</privilege>
/// <privilege>http://tizen.org/privilege/network.get</privilege>
/// <exception cref="System.NotSupportedException">Thrown when the required feature is not supported.</exception>
/// <exception cref="System.UnauthorizedAccessException">Thrown when application does not have some privilege to access this method.</exception>
/// <exception cref="System.InvalidOperationException">Thrown when the result is invalid.</exception>
- /// <exception cref="System.ArgumentException">Thrown when arguments are invalid</exception>
+ /// <exception cref="System.ArgumentException">Thrown when arguments are invalid.</exception>
public async Task<IEnumerable<T>> GetResponseAsync()
{
IEnumerable<T> task = null;
#region IDisposable Support
private bool _disposedValue = false;
+ /// <summary>
+ /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
+ /// </summary>
+ /// <param name="disposing">If true, managed and unmanaged resources can be disposed, otherwise only unmanaged resources can be disposed.</param>
+ /// <since_tizen> 3 </since_tizen>
protected virtual void Dispose(bool disposing)
{
if (!_disposedValue)
if (disposing)
{
Cancel();
- _service.Dispose();
}
_disposedValue = true;
}
}
/// <summary>
- /// Releases all resources used by this object.
+ /// Releases all the resources used by this object.
/// </summary>
- /// <since_tizen>3</since_tizen>
+ /// <since_tizen> 3 </since_tizen>
public void Dispose()
{
Dispose(true);