protected virtual void requestImageFromUrlSink(HttpWebResponse _reponse, delegate_OnReqestImageDone _sink, String _imageId)
{
try
{
String imageId = _imageId;
Stream stream = _reponse.GetResponseStream();
if (stream == null)
return;
this.addImage(imageId, Image.FromStream(stream));
if (_sink != null) ((delegate_OnReqestImageDone)_sink)(imageId);
}
catch(Exception e)
{
this.writeLog(LogType.Error, String.Format("Fehler bei 'requestImageFromUrlSink' für Url '{0}'", _reponse.ResponseUri.AbsoluteUri), e);
}
lock (imageUrlOnRequest)
{
if (imageUrlOnRequest.ContainsKey(_imageId))
{
foreach(var delegateLink in imageUrlOnRequest[_imageId])
{
if (delegateLink != null) ((delegate_OnReqestImageDone)delegateLink)(_imageId);
}
imageUrlOnRequest.Remove(_imageId);
}
}
}