/// <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);
        }
Beispiel #3
0
        /// <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);
        }
Beispiel #4
0
        /// <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);
        }