/// <summary> /// Insert configuration value to database. /// </summary> /// <param name="columnName">Configuration column name.</param> /// <param name="value">New value.</param> private void UpdateConfigurationValue <T>(string columnName, T value) { UseDatabase(() => { IWantToDatabase.UpdateConfiguration(columnName, value); _log.InfoFormat("Written Configuration '{0}' = '{1}'", columnName, value); }); }
/// <summary> /// Read configuration value from database. /// </summary> /// <param name="columnName">Configuration column name.</param> /// <returns>Value from user configuration.</returns> private T ReadConfigurationValue <T>(string columnName) { var ret = default(T); UseDatabase(() => { ret = IWantToDatabase.GetConfiguration <T>(columnName); _log.InfoFormat("Readed Configuration '{0}' = '{1}'", columnName, ret); }); return(ret); }
/// <summary> /// Gets full or preview image from cache. If missing null is returned. /// </summary> /// <param name="key">Image key, it can be URL or image Path.</param> /// <param name="preview">True for requesting preview image, false if we need full size image.</param> /// <returns>Bitmap or null if image doesn't exist in cache.</returns> public Bitmap TryGetImage(string key, bool preview) { Bitmap retBitmap = null; var record = IWantToDatabase.GetFileLruCache(key); if (record != null) { _log.InfoFormat("Image with key: '{0}' already stored in cache.", key); var data = (preview) ? record.Preview : record.Data; var bitmap = BitmapFactory.DecodeByteArray(data, 0, data.Length); retBitmap = bitmap; } else { _log.WarnFormat("Image with key: '{0}' missing in cache.", key); } return(retBitmap); }
/// <summary> /// Stores downloaded image to database LruCache. /// </summary> /// <param name="key">Image key, it can be URL or Path.</param> /// <param name="fullImage">Full Bitmap.</param> /// <param name="previewImage">Preview Bitmap.</param> /// <param name="addData">Additional data. Note: it is not used in this time.</param> public void InsertImageToCache(string key, Bitmap fullImage, Bitmap previewImage, long addData) { var cacheRecord = new FileLruCache(key, ImageUtils.Instance.TransformBitmapToByteArray(fullImage), ImageUtils.Instance.TransformBitmapToByteArray(previewImage), addData); IWantToDatabase.InsertFileLruCache(cacheRecord); }