今天分享一个工具类 CookieMgr,功能就是读取和写入 SharedObject 对象。很简单,都是静态方法,就不多说了

 package org.polarbear.core
{
import flash.net.SharedObject; /**
* 本地缓存管理器
* @author vee <a href="mailto:idoublewei@126.com">idoublewei@126.com</a> 2015-5-8 9:27:37
*/
public class CookieMgr
{
//============================================================================
//PUBLIC
//============================================================================
/**
* 往缓存中写入数据
* @param key 数据对应的键
* @param data 数据
* @param name 对象名称
* @param localPath 创建了共享对象的 SWF 文件的完整路径或部分路径,这将确定共享对象的本地存储位置。如果未指定此参数,则使用完整路径。
* @return 写入成功返回true,否则返回false
*/
static public function write(key:String, data:*, name:String, localPath:String = null):void
{
if (null == key || "" == key || null == data || null == name) return;
var so:SharedObject = getSO(name, localPath);
if (null == so) return; so.data[key] = data; try
{
so.flush();
}
catch(error:Error) { return; }
}
/**
* 从缓存中读取数据
* @param key 所取的数据的键
* @param name 对象的名称
* @param localPath 创建了共享对象的 SWF 文件的完整路径或部分路径,这将确定共享对象的本地存储位置。如果未指定此参数,则使用完整路径。
* @return 如果未找到,返回null
*/
static public function read(key:String, name:String, localPath:String = null):*
{
var so:SharedObject = getSO(name, localPath);
if (null == so) return null;
return so.data[key];
}
/**
* 判断缓存中是否存在指定对象的指定数据
* @param key 对象中数据的键
* @param name 对象的名称
* @param localPath 创建了共享对象的 SWF 文件的完整路径或部分路径,这将确定共享对象的本地存储位置。如果未指定此参数,则使用完整路径。
*/
static public function hasCookie(key:String, name:String, localPath:String = null):Boolean
{
var so:SharedObject = getSO(name, localPath);
if (null == so) return false;
return key in so.data;
}
/**
* 删除缓存数据
* @param name 对象的名称
* @param key 需要删除的数据的键,如果未指定该参数,则删除指定name对象,否则删除name对象中的key数据
* @param localPath 创建了共享对象的 SWF 文件的完整路径或部分路径,这将确定共享对象的本地存储位置。如果未指定此参数,则使用完整路径。
*/
static public function deleteCookie(name:String, key:String = null, localPath:String = null):void
{
var so:SharedObject = getSO(name, localPath);
if (null == so) return; if (null == key)
{
var keys:Array = [];
for (key in so.data)
{
keys.push(key);
}
for each (key in keys)
{
delete so.data[key];
}
}
else if (key in so.data) delete so.data[key];
}
//============================================================================
//PRIVATE
//============================================================================
/**
* 获取指定名称的缓存对象
* @param name 对象名称
* @param localPath 创建了共享对象的 SWF 文件的完整路径或部分路径,这将确定共享对象的本地存储位置。如果未指定此参数,则使用完整路径。
* @return 获取出错时,返回null
*/
static private function getSO(name:String, localPath:String):SharedObject
{
try
{
var so:SharedObject = SharedObject.getLocal(name, localPath);
return so;
}
catch(error:Error) { return null; }
return null;
}
}
}

CookieMgr

as3 工具类分享 CookieMgr的更多相关文章

  1. .Net Excel 导出图表Demo(柱状图,多标签页) .net工具类 分享一个简单的随机分红包的实现方式

    .Net Excel 导出图表Demo(柱状图,多标签页) 1 使用插件名称Epplus,多个Sheet页数据应用,Demo为柱状图(Epplus支持多种图表) 2 Epplus 的安装和引用 新建一 ...

  2. 工具类分享之获取Request/Response工具类《RequestContextHolderUtil》

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/aiyaya_/article/details/78975893前言在开发spring web项目时, ...

  3. 170314、工具:apache httpClient多线程并发情况下安全实用及工具类分享

    简单用法介绍:介绍来源网络 建立连接:在HttpClient中使用多线程的一个主要原因是可以一次执行多个方法.在执行期间,每一个方法都使用一个HttpConnection实例.由于在同一时间多个连接只 ...

  4. .net工具类 分享一个简单的随机分红包的实现方式

    废话不多说,直接上代码 /// <summary> /// 分红包 /// </summary> public class RandomMoney { public Rando ...

  5. java工具类——java将一串数据按照gzip方式压缩和解压缩

    我要整理在工作中用到的工具类分享出来,也方便自己以后查阅使用,这些工具类都是我自己实际工作中使用的 import java.io.ByteArrayInputStream; import java.i ...

  6. (转载)实例详解Android快速开发工具类总结

    实例详解Android快速开发工具类总结 作者:LiJinlun 字体:[增加 减小] 类型:转载 时间:2016-01-24我要评论 这篇文章主要介绍了实例详解Android快速开发工具类总结的相关 ...

  7. (转载)android 一些工具类汇总

    android 一些工具类汇总 作者:曾田生z 字体:[增加 减小] 类型:转载 时间:2016-08-14我要评论 本文给大家汇总介绍了一些常用的Android工具类,非常的简单实用,有需要的小伙伴 ...

  8. 分享两个模拟get和post方法的工具类,让应用能够与服务器进行数据交互

    很久没有码字了,今天跟大家分享一个模拟get和post方法的工具类,在安卓应用中很多都需要跟服务器进行数据交互,这需要两方面的配合,首先服务器端会给应用提供一些数据交互的接口,可是怎样在应用中去调用呢 ...

  9. 分享非常好用的前端分页js工具类 灵活 简单易懂

    分享自己封装的前端分页js工具类  下面是默认样式效果截图 可以随意更改js及css 很灵活 /** * pageSize, 每页显示数 * pageIndex, 当前页数 * pageCount 总 ...

随机推荐

  1. Flex 调用webService

    今天手头没事,就学习下 Flex 调用webService的方法.本地测试OK  和大家分享下. ——————————————————————————————————————————————————— ...

  2. [转载]深入理解ASP.NET MVC之ActionResult

    Action全局观 在上一篇最后,我们进行到了Action调用的“门口”: 1 if (!ActionInvoker.InvokeAction(ControllerContext, actionNam ...

  3. 【转】深入研究java.lang.Runtime类

    一.概述      Runtime类封装了运行时的环境.每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接.      一般不能实例化一个Runtime对象, ...

  4. ENVI5.1安装破解教程

    原文地址:  ENVI5.1安装破解_百度经验 http://jingyan.baidu.com/article/020278118b5ded1bcd9ce57a.html   ENVI5.1_x86 ...

  5. Oracle程序包

    程序包由两部分构成:规范(specification)和主体(body). 创建表 create table PEOPLE ( ID NUMBER primary key not null, NAME ...

  6. MySQL 普通索引、唯一索引和主索引

    1.普通索引 普通索引(由关键字KEY或INDEX定义的索引)的唯一任务是加快对数据的访问速度.因此,应该只为那些最经常出现在查询条件(WHEREcolumn=)或排序条件(ORDERBYcolumn ...

  7. VMware Workstation与Hyper-V不兼容。请先从系统中移除Hyper-V角色,然后再运行VMware Workstation。

    VMware Workstation与Hyper-V不兼容.请先从系统中移除Hyper-V角色,然后再运行VMware Workstation. 今天在用win8.1的时候发现了这个问题,解决办法如下 ...

  8. 【TopCoder】SRM 680 DIV 2

    1. BearPair之bigDistance1.1 题目概述在 <= 50的字符串中找位置i,j 满足(1) s[i] != s[j];(2) abs(i-j)尽可能大.若不存在返回-1, 否 ...

  9. NOI2004 小H的小屋

    还是纯粹不会啊……到底该怎么办 http://blog.sina.com.cn/s/blog_86942b1401016m3g.html http://www.cnblogs.com/datam-cy ...

  10. angularJS $resource与后台restapi的对应关系

    REST(表征性状态传输,Representational State Transfer)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格.RESTful风格的设计不仅 ...