⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rebuildthumbnailsjob.cs

📁 本系统是在asp版《在线文件管理器》的基础上设计制作
💻 CS
字号:
//------------------------------------------------------------------------------
// <copyright company="Telligent Systems">
//     Copyright (c) Telligent Systems Corporation.  All rights reserved.
// </copyright> 
//------------------------------------------------------------------------------

using System.Collections;
using System.IO;
using System.Xml;
using CommunityServer.Components;
using CommunityServer.Configuration;

namespace CommunityServer.Galleries.Components
{
	/// <summary>
	/// Summary description for RebuildThumbnailsJob.
	/// </summary>
	public class RebuildThumbnailsJob : IJob
	{
		public RebuildThumbnailsJob() { }

		public void Execute(XmlNode node)
		{
			Queue queue = CSCache.Get("RebuildItems") as Queue;
			int items;

			if((queue != null) && (queue.Count > 0))
			{
				// Get how many items to process
				try { items = int.Parse(node.Attributes["picturesPerRun"].Value); }
				catch { items = 25; }

				// See if limiting items is 0 or less (do all of them)
				if(items <= 0)
					items = queue.Count;

				for(int i = ((queue.Count < items) ? queue.Count : items) - 1 ; i >= 0 ; i--)
				{
					RebuildItem item = queue.Dequeue() as RebuildItem;

					// The file may have already been regenerated, skip it
					if(File.Exists(item.Filename))
						continue;

					// If no settings, continue
					if(item.Settings == null)
						continue;

					// Generate the image
					ImageHandling.ScalePicture(item.Filename, item.Picture, item.Settings);
				}

				// If the queue is empty, then remove it
				if(queue.Count <= 0)
					CSCache.Remove("RebuildItems");
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -