首页> 中国专利> 用于内容发布的基于事件的版本控制和可见性

用于内容发布的基于事件的版本控制和可见性

摘要

本发明延伸至用于内容发布的基于事件的版本控制和可见性的方法、系统和计算机程序产品。总体上,本发明的实施例对内容发布进行归类,其中每个发布可以具有不同的目的地,诸如,例如公众、受限、针对下级客户端受限等。内容提供方(例如,在线商店)所提供的内容(例如,应用商店页面、评级、评论等)能够与指定操作系统/商店发布相关联。相同内容的不同版本可能与不同的指定操作系统/商店发布相关联。当内容发布被公布时,该内容发布的类别能够被更新而使得相对应的内容能够在并不改变内容本身的情况下被公开获取。因此,内容能够与系统事件相联系,这有助于确保内容始终如一的视图并且使得改变内容可见性的操作数量最小化。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-07-05

    授权

    授权

  • 2016-05-11

    实质审查的生效 IPC(主分类):G06F15/16 申请日:20130828

    实质审查的生效

  • 2016-04-13

    公开

    公开

说明书

背景技术

计算机系统和相关技术影响到社会的许多方面。实际上,计算机系统处理信息的能力已经转变了我们生活和工作的方式。计算机系统现在普遍地执行了在计算机系统出现之前由人工执行的大量任务(例如,文字处理、调度、审计等)。近年来,计算机系统已经互相耦合并且耦合至其它电子设备从而形成有线和无线的计算机网络,计算机系统和其它电子设备能够通过该计算机网络传输电子数据。因此,许多计算任务的执行跨多个不同计算机系统和/或多种不同计算环境进行分布。

一些分布式计算环境包括内容提供方,后者被用来托管向进行请求的客户端所分布的内容。例如,在线商店可以被用来向其它计算机系统处的用户出售内容,该内容诸如例如是应用、数据等。当使得内容能够诸如通过在线商店进行分布时,内容通常需要在内部进行验证并且还能够被更新(至少不时地并且可能频繁地被更新)。内容在公布之前——甚至在内部验证的期间——并不被暴露给公众经常也是重要的。

由此,一些内容提供方经常选择占用整个停工期更新内容并且对新的内容进行内部验证。然而,这使得公布耗费明显更长的时间。占用整个停工期还会防止在线商店所提供的其它内容的分布,并且除了其它之外,这会影响到在线商店所带来的收入。可替换地,新的内容可以包括日期设置,其指示未来的可获取日期,新的内容在该日期之后上线。然而,针对发布内容使用日期设置限制了灵活性并且在发布日期在日期设置被编码到内容之后发生变化的情况下会导致窘迫。其它方法包括使用不同环境进行验证并自行托管内容并且将新的内容加载到生产系统之中。然而,从生产系统中移除内容的验证需要额外的硬件。

发明内容

本发明扩展至用于内容发布的基于事件的版本控制和可见性的方法、系统和计算机程序产品。在一些实施例中,内容的一部分的多个不同版本被提供至其它设备。内容提供方访问内容的第一版本。该内容提供方针对该内容的第一版本制定标识数据。该标识数据将该内容的第一版本标识为该内容的一个版本。第一版本对象与该内容的第一版本相关联。该第一版本对象指示该内容的第一版本以操作系统的指定版本为目标。该第一版本对象还包括第一受限发布属性,其指示该内容的第一版本的可访问性。

该内容提供方访问该内容的不同的第二版本。该内容提供方针对该内容的第二版本制定标识数据。该标识数据将该内容的第二版本标识为该内容的一个版本。第二版本对象与该内容的第二版本相关联。该第二版本对象指示该内容的第二版本以操作系统的指定版本为目标。该第二版本对象还包括第二受限发布属性,其指示该内容的第二版本的可访问性。

该内容提供方针对该内容的第一版本创建第一列表。该内容提供方使用该标识数据来指示该第一列表在提供该内容的一个版本并且还基于该第一受限发布属性针对该第一列表设置第一可见性。该内容提供方针对该内容的第二版本创建第二列表。该内容提供方使用该标识数据来指示该第二列表在提供该内容的一个版本并且还基于该第二受限发布属性针对该第二列表设置不同的第二可见性。该第二可见性不同于该第一可见性。例如,该内容的第二版本的可见性与该内容的第一版本的可见性相比可以受到更多或更少的限制。

该内容提供方同时使得该内容的第一版本和该内容的第二版本能够被其它设备所获取。该内容提供方依据该第一可见性呈现第一列表以将该内容的第一版本提供给其它设备。该内容提供方依据不同的该第二可见性呈现第二列表以将该内容的第二版本提供给其它设备。

在其它实施例中,该内容向其它设备进行公布。内容提供方访问内容的一个版本。该内容提供方针对该内容的版本制定标识数据。版本对象与该内容的版本相关联。该版本对象指示该内容的版本以操作系统的具体版本为目标。该版本对象还包括受限发布属性。该受限发布属性的数值指示该内容的版本为受限制内容并且针对该内容的可访问性被局限于被授权观看受限制内容的用户。

该内容提供方针对该内容的版本制定列表。该内容提供方使用该标识数据来指示该列表在提供该内容的版本。该内容提供方针对该列表设置可见性而使得该内容的版本能够由被授权观看受限制内容的用户所访问而无法被其它用户所访问。该内容提供方依据该可见性呈现该列表。

在呈现该列表之后,在并不修改该内容的版本的情况下并且在在线商店保持运营的同时,该内容提供方接收到将该受限发布属性的数值变为新数值的输入。该新数值指示该内容的版本能够被公开获取。通过针对该列表设置新的可见性,内容提供方更新针对该内容的该版本的列表。该新的可见性指示该列表将公开可见。该内容提供方依据该新的可见性在在线商店呈现该列表。

提供该发明内容而以简化的形式引入在以下具体实施方式中进一步进行描述的概念的选择。该发明内容并非意在标示出所请求保护主题的关键特征或必要特征,也并非意在确定所请求保护主题的范围时被用作辅助。

本发明另外的特征和优势将在以下描述中给出,并且部分将由于该描述而是显而易见的,或者可以通过本发明的实践而被习得。本发明的特征可以利用在所附权利要求中特别指出的手段和组合而被意识到并获得。本发明的这些和其它特征将由于以下描述和所附权利要求而变得更为完全地显而易见,或者可以通过如随后所给出的本发明的实践而被习得。

附图说明

为了描述能够获得本发明以上所记载的以及其它的优势和特征的方式,将通过参考在附图中所图示的其具体实施例而对以上简要描述的本发明的更为特定的描述加以呈现。要理解的是,这些附图仅描绘了本发明的典型实施例,因此并不被认为对其范围加以限制,本发明将通过使用附图而利用额外的特性和细节被加以描述和解释,其中:

图1图示了促成向其它设备提供内容的多种不同版本的示例计算机架构。

图2图示了用于向其它设备提供内容的多种不同版本的示例方法的流程图。

图3图示了促成向其它设备公布内容的示例计算机架构。

图4图示了用于向其它设备公布内容的示例方法的流程图。

图5图示了版本对象表格的示例定义。

图6图示了应用元数据存储的示例定义。

图7图示了针对版本对象表格的示例变化。

具体实施方式

本发明扩展至用于内容发布的基于事件的版本控制和可见性的方法、系统和计算机程序产品。在一些实施例中,内容的一部分的多个不同版本被提供至其它设备。内容提供方访问内容的第一版本。该内容提供方针对该内容的第一版本制定标识数据。该标识数据将该内容的第一版本标识为该内容的一个版本。第一版本对象与该内容的第一版本相关联。该第一版本对象指示该内容的第一版本以操作系统的指定版本为目标。该第一版本对象还包括第一受限发布属性,其指示该内容的第一版本的可访问性。

该内容提供方访问该内容的不同的第二版本。该内容提供方针对该内容的第二版本制定标识数据。该标识数据将该内容的第二版本标识为该内容的一个版本。第二版本对象与该内容的第二版本相关联。该第二版本对象指示该内容的第二版本以操作系统的指定版本为目标。该第二版本对象还包括第二受限发布属性,其指示该内容的第二版本的可访问性。

该内容提供方针对该内容的第一版本创建第一列表。该内容提供方使用该标识数据来指示该第一列表在提供该内容的一个版本并且还基于该第一受限发布属性针对该第一列表设置第一可见性。该内容提供方针对该内容的第二版本创建第二列表。该内容提供方使用该标识数据来指示该第二列表在提供该内容的一个版本并且还基于该第二受限发布属性针对该第二列表设置不同的第二可见性。该第二可见性不同于该第一可见性。例如,该内容的第二版本的可见性与该内容的第一可见性相比可以受到更多或更少的限制。

该内容提供方同时使得该内容的第一版本和该内容的第二版本能够被其它设备所获取。该内容提供方依据该第一可见性呈现该第一列表以将该内容的第一版本提供给其它设备。该内容提供方依据该不同的第二可见性呈现第二列表以将该内容的第二版本提供给其它设备。

在其它实施例中,该内容向其它设备进行公布。内容提供方访问内容的一个版本。该内容提供方针对该内容的版本制定标识数据。版本对象与该内容的版本相关联。该版本对象指示该内容的版本以操作系统的具体版本为目标。该版本对象还包括受限发布属性。该受限发布属性的数值指示该内容的版本为受限制内容并且针对该内容的可访问性被局限于被授权观看受限制内容的用户。

该内容提供方针对该内容的版本制定列表。该内容提供方使用该标识数据来指示该列表在提供该内容的版本。该内容提供方针对该列表设置可见性而使得该内容的版本能够由被授权观看受限制内容的用户所访问而无法被其它用户所访问。该内容提供方依据该可见性呈现该列表。

在呈现该列表之后,在并不修改该内容的版本的情况下并且在在线商店保持运营的同时,该内容提供方接收到将该受限发布属性的数值变为新数值的输入。该新数值指示该内容的版本能够被公开获取。通过针对该列表设置新的可见性,内容提供方更新针对该内容的该版本的列表。该新的可见性指示该列表将公开可见。该内容提供方依据该新的可见性在在线商店呈现该列表。

本发明的各实施例可包括或利用专用或通用计算机,该专用或通用计算机包括诸如例如一个或多个处理器和系统存储器的计算机硬件,如以下更详细讨论的。本发明范围内的各实施例还包括用于承载或存储计算机可执行指令和/或数据结构的物理和其它计算机可读媒体。这样的计算机可读媒体可以是可由通用或专用计算机系统访问的任何可用媒体。存储计算机可执行指令的计算机可读媒体是计算机存储媒体(设备)。承载计算机可执行指令的计算机可读媒体是传输媒体。由此,作为示例而非限制,本发明的各实施例可包括至少两类显著不同的计算机可读媒体:计算机存储媒体(设备)和传输媒体。

计算机存储媒体(设备)包括RAM、ROM、EEPROM、CD-ROM、固态驱动器(“SSD”)(例如,基于RAM)、闪存、相位变化存储器(“PCM”)、其它类型的存储器,其它光盘存储、磁盘存储或其它磁存储设备,或能用于存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机所访问的任何其它媒体。

“网络”被定义为使得能够在计算机系统和/或模块和/或其它电子设备之间传输电子数据的一个或多个数据链路。当信息通过网络或另一个通信连接(硬连线、无线、或者硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当地视为传输媒体。传输媒体可包括可用于携带计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的网络和/或数据链路。上述的组合也应被包括在计算机可读媒体的范围内。

此外,在到达各种计算机系统组件之后,计算机可执行指令或数据结构形式的程序代码装置可从传输媒体自动转移到计算机存储媒体(设备)(或者反之亦然)。例如,通过网络或数据链路接收到的计算机可执行指令或数据结构可被缓存在网络接口模块(例如,“NIC”)内的RAM中,然后最终被传送到计算机系统RAM和/或计算机系统处的较不易失性的计算机存储媒体(设备)。因此应当理解的是,计算机存储媒体(设备)可被包括在同样(或甚至主要)利用传输媒体的计算机组件中。

计算机可执行指令例如包括,当在处理器处执行时使通用计算机、专用计算机或专用处理设备执行某一功能或某组功能的指令和数据。计算机可执行指令可以是例如二进制代码、诸如汇编语言之类的中间格式指令或甚至源代码。尽管用结构特征和/或方法动作专用的语言描述了本主题,但要理解的是,所附权利要求书中定义的主题不必限于上述特征或动作。相反,上述特征和动作是作为实施权利要求的示例形式而公开的。

本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置的网络计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费电子设备、网络PC、小型计算机、大型计算机、移动电话、PDA、平板、寻呼机、路由器、交换机等等。本发明也可以在通过网络链接(或者通过硬连线数据链路、无线数据链路,或者通过硬连线和无线数据链路的组合)的本地和远程计算机两者都执行任务的分布式系统环境中实践。在分布式系统环境中,程序模块可位于本地和远程存储器存储设备中。

本发明的实施例还可以在云计算环境中实施。在该说明书以及以下的权利要求中,“云计算”被定义为用于使得能够针对可配置计算资源的共享池进行按需网络访问的模型。例如,能够在市场中采用云计算以针对可配置的计算资源的共享池提供普遍且便利的按需访问。可配置的计算资源的共享池可以经由虚拟化而被快速提供,并以低度管理工作或服务提供方交互而发布,并且随后相应地按比例进行。

云计算模型可以由各种特征所组成,诸如,例如按需自服务、宽泛网络访问、资源装池、快速弹性、测量服务等。云计算模型还能够展现出各种服务模型,诸如,例如软件即服务(SaaS)、平台即服务(PaaS)和设施即服务(IaaS)。云计算模型还能够使用不同部署模型进行部署,诸如私有云、社区云、公众云、混合云等。在该说明书和权利要求中,“云计算环境”是其中采用云计算的环境。

总体上,本发明的实施例对内容发布进行归类,其中每个发布可以具有不同的目的地,诸如,例如公众、受限、针对下级客户端受限等。内容提供方(例如,在线商店)所提供的内容(例如,应用商店页面、评级、评论等)能够与指定操作系统/商店发布相关联。相同内容的不同版本可能与不同的指定操作系统/商店发布相关联。

在一些实施例中,与公开发布相关联的内容通常是可用的。另一方面,与受限发布相关联的内容仅能够由被授权访问受限发布内容的用户所获取。当内容发布被公布时,该内容发布的类别能够被更新而使得相对应的内容能够在并不改变内容本身的情况下被公开获取。因此,内容能够与系统事件相联系,这有助于确保内容始终如一的视图并且使得改变内容可见性的操作数量最小化。

图1图示了促成向其它设备提供内容的多种不同版本的示例计算机架构100。参考图1,计算机架构100包括在线商店101和计算机系统117。在线商店101和计算机系统117均能够通过网络互相连接(或者作为该网络的一部分),上述网络诸如例如局域网(“LAN”)、广域网(“WAN”)以及甚至互联网。因此,在线商店101和计算机系统117以及任意其它所连接的计算机系统以及它们的组件能够创建消息相关数据并通过网络交换消息相关数据(例如,互联网协议(“IP”)数据报以及利用IP数据报的其它更高层协议,诸如传输控制协议(“TCP”)、超文本传输协议(“HTTP”)、简单邮件传输协议(“SMTP”)等,或者使用其它非数据报协议)。

现在参考图1,在线商店101包括内容处理模块102、列表创建模块103、接口模块106和访问模块107。通常,内容处理模块102被配置为访问内容中针对该内容制定标识数据的一部分,并且将版本对象与该内容相关联。该版本对象可以指示该内容是针对操作系统的具体版本,和/或该内容针对平台的具体版本。该版本对象还可以包含发布属性。该发布属性指示内容的可访问性,诸如,例如被限制为授权用户、针对下级系统进行限制,或者一般能够进行访问。

列表创建模块103被配置为访问内容和相对应的标识数据和版本对象。列表创建模块103能够基于相对应的标识数据和版本对象而创建针对内容的列表。内容的列表可以被给予名称,包括指向该内容的链接,并且具有可见性。该可见性可以从相对应的发布属性的数值进行确定。例如,内容能够由被授权访问受限制内容的用户所看到,被具有指定配置的计算机系统所看到,或者被(在任何配置的计算机系统上的)任何用户所看到。

接口模块106被配置为接收针对在线商店101所托管的内容的内容请求。内容请求可以针对指定内容或者可以包括具有一个或多个搜索项的查询,以及用户证书和系统数据。用户证书能够对应于请求所托管内容的用户。系统数据可以指示要在其上使用所托管内容的计算机系统的系统配置(例如,操作系统、平台等)。接口模块106能够获取被请求的任意所托管内容的列表。在一些实施例中,接口模块106对查询中所包含的一个或多个搜索项进行匹配以识别出列表。搜索项例如可以包括关键词、内容类型、类容类别、内容作者、日期范围等。在这些实施例中,接口模块106能够制定满足一个或多个搜索项的列表的集合。在其它实施例中,接口模块106获取针对指定内容的列表。在这些其它实施例中,接口106可以针对指定内容制定列表集合。

接口模块106能够向访问模块107发送用户证书和系统数据。从以其它方式满足内容请求(例如,基于一个或多个搜索项)的列表集合,访问模块107过滤掉例如并非来自授权用户或者并未指示适当计算机系统配置(例如,操作系统版本)的列表。访问模块107能够包括或参照证书数据库以(基于所接收到的证书)对用户进行认证并且随后确定用户是否被授权访问受限制内容。访问模块107还能够参照内容的版本对象和/或可见性以确定该内容是否以任何方式受到限制。

访问模块107能够将用户的授权和/或计算机系统的系统数据与指示可见性的相对应版本对象和/或数据中所包含的数据进行比较。根据该比较,访问模块107能够确定内容的列表是否被呈现给用户。如果内容的列表并不被呈现给用户,则从列表集合中去除该列表。

接口模块106能够将列表集合中所包括的任何剩余列表呈现回给在进行请求的计算机系统处的用户。

图2图示了用于向其它设备提供内容的多种不同版本的示例方法200的流程图。方法200将关于计算机架构100的组件和数据进行描述。

方法200包括访问内容的第一版本(201)。例如,内容处理模块102能够访问内容111A(内容111的一个版本)。方法200包括针对该内容的第一版本制定标识数据,该标识数据将该内容的第一版本标识为该内容的一个版本(202)。例如,内容处理模块102能够为内容111A制定ID112。ID112将内容111A标识为内容111的一个版本。

方法200包括将第一版本对象与该内容的第一版本相关联,该第一版本对象指示该内容的第一版本以操作系统的指定版本为目标,该第一版本对象还包括第一受限发布属性,其指示该内容的第一版本的可访问性(203)。例如,内容处理模块102能够将版本对象114与内容111A相关联。版本对象114可以指示内容111A是以操作系统的指定版本为目标,诸如,例如Microsoft?Windows?的版本(Windows?8、Windows?8.1等)、APPLE?iOS?的版本,或者Google?AndroidTM的版本。如所描绘的,版本对象114包括发布属性116。发布属性116可以指示内容111A的可访问性(例如,受限、针对下级系统限制、公开等)。

方法200包括访问该内容的不同的第二版本(204)。例如,内容处理模块102能够访问内容111B(内容111的另一个版本)。方法200包括针对该内容的第二版本制定标识数据,该标识数据将该内容的第二版本标识为该内容的一个版本(205)。例如,内容处理模块102能够针对内容111B制定ID112。ID112将内容111B标识为内容111的一个版本。

方法200包括将第二版本对象与该内容的第二版本相关联,该第二版本对象指示该内容的第二版本以操作系统的指定版本为目标,该第二版本对象还包括第二受限发布属性,其指示该内容的第二版本的可访问性(206)。例如,内容处理模块102能够将版本对象117与内容111B相关联。版本对象117可以指示内容111B是以操作系统的指定版本为目标,诸如,例如Microsoft?Windows?的版本(例如Windows?8、Windows?8.1等)、APPLE?iOS?的版本,或者Google?AndroidTM的版本。如所描绘的,版本对象117包括发布属性118。发布属性118可以指示内容111B的可访问性(例如,受限、针对下级系统限制、公开等)。内容111B的可访问性可以与内容111A的可见性相同或不同。

方法200包括针对该内容的第一版本创建第一列表(207)。例如,列表创建模块103能够针对内容111A创建列表121。列表121包括名称123、内容111A(或指向内容111A的链接)和可见性124。针对内容的第一版本创建第一列表包括使用该标识数据来指示该第一列表在提供该内容的一个版本(208)。例如,列表创建模块103能够使用ID112来指示列表121在提供内容111的一个版本(例如,通过创建名称123)。

针对该内容的第一版本创建第一列表包括基于该第一受限发布属性针对该第一列表设置第一可见性(208)。例如,列表创建模块103能够基于并对应于发布属性116而针对列表121设置可见性124。当发布属性116指示内容111A能够公开获取时,可见性124能够指示列表121是能够被公开看到的。另一方面,当发布属性116指示有关内容111A的可访问性的任何限制时,可见性124能够指示列表121对可见性具有相对应的限制,例如局限于授权用户,局限于指定操作系统/平台版本等。

方法200包括针对该内容的第二版本创建不同的第二列表(210)。例如,列表创建模块103能够针对内容111B创建列表122。列表122包括名称126、内容111B(或指向内容111B的链接)和可见性127。针对内容的第二版本创建不同的第二列表包括使用该标识数据来指示该第二列表在提供该内容的一个版本(211)。例如,列表创建模块103能够使用ID112来指示列表122在提供内容111的一个版本(例如,通过创建名称126)。

针对该内容的第二版本创建不同的第二列表包括基于该第二受限发布属性针对该第二列表设置不同的第二可见性,该第二可见性不同于该第一可见性(212)。例如,列表创建模块103能够基于并对应于发布属性117而针对列表122设置可见性127。当发布属性118指示内容111B能够公开获取时,可见性127能够指示列表122是能够被公开看到的。另一方面,当发布属性118指示有关内容111B的可访问性的任何限制时,可见性127能够指示列表122对可见性具有相对应的限制,例如局限于授权用户,局限于指定操作系统/平台版本等。可见性127可以不同于可见性124。

在其它实施例中,可见性124和可见性127可以是相同的(例如,都指示公开可见性,都将可见性局限于授权用户,等等)。

方法200包括同时使得该内容的第一版本和该内容的第二版本能够被其它设备所获取(213)。例如,在线商店101能够同时使得内容111A和111B能够被计算机系统117(以及其它计算机系统)所获取。计算机系统117可以具有任意各种所描述的不同系统配置,包括移动电话、台式计算机等。

同时使得该内容的第一版本和该内容的第二版本能够被其它设备所获取,依据该第一可见性呈现第一列表以将该内容的第一版本提供给其它设备(214)。例如,列表121能够依据可见性124进行呈现以将内容111A提供给计算机系统117(以及其它计算机系统)。同时使得该内容的第一版本和该内容的第二版本能够被其它设备所获取,依据该不同的第二可见性呈现第二列表以将该内容的第二版本提供给其它设备(215)。例如,列表122能够依据可见性127进行呈现以将内容111B提供给计算机系统117(以及其它计算机系统)。

在创建列表121和122之后,用户141能够在计算机系统117键入输入而使得计算机系统117向在线商店101发出内容请求131。如所描绘的,内容请求131包括(用户132的)证书132以及(计算机系统117的)系统数据133。系统数据133可以指示硬件组件108和操作系统109的一个或多个属性。操作系统109可以是操作系统的一个版本,其可以是或不是操作系统的指定版本。列表121和122可能包括在与内容请求131中所包含的搜索项相匹配的列表集合之中。

基于证书132、系统数据133以及可见性124和127,访问模块107能够确定一个或多个列表121和122是否能够被返回至计算机系统117。例如,如果可见性124指示列表121能够被公开看到,列表121就能够被返回至计算机系统。如果可见性127指示列表122被局限于授权用户,则访问模块107能基于证书132对用户141进行认证。访问模块107随后能够确定用户141是否为授权用户。如果用户141被授权,则列表122能够被返回至计算机系统117。另一方面,如果用户141未被授权,则列表122不被返回至计算机系统117。

类似地,如果可见性127指示列表122不能被下级系统所看到,则访问模块107能够将系统数据133与版本对象117进行比较。如果系统数据133中所表示的平台和/或操作系统版本至少如版本对象117中所表示的平台和/或操作系统版本一样新,则列表122能够被返回至计算机系统117。另一方面,如果系统数据133中所表示的平台和/或操作系统版本比版本对象117中所表示的平台和/或操作系统版本更旧,则列表122不被返回至计算机系统117。

如虚线所指示的,在线商店101是否将列表122返回至计算机系统117取决于证书132和/或系统数据133。

在一些实施例中,内容处理模块103在接收到新内容时实质上自动地处理新内容。在其它实施例中,内容处理模块103响应于来自管理员的输入而处理新内容。例如,管理员142能够提交输入143。输入143可以是使得内容处理模块102处理内容的命令。响应于输入143,内容处理模块103能够处理内容111A和内容111B中的一个或多个。在任一个实施例中,能够在在线商店101上线并运行的同时处理内容并创建列表。

图3图示了促成向其它设备公布内容的示例计算机架构300。参考图3,计算机架构300包括在线商店301与计算机系统317和351。在线商店301与计算机系统317和351均能够通过网络互相连接(或者作为该网络的一部分),上述网络诸如例如局域网(“LAN”)、广域网(“WAN”)以及甚至互联网。因此,在线商店301与计算机系统317和351以及任意其它所连接的计算机系统以及它们的组件能够创建消息相关数据并通过网络交换消息相关数据(例如,互联网协议(“IP”)数据报以及利用IP数据报的其它更高层协议,诸如传输控制协议(“TCP”)、超文本传输协议(“HTTP”)、简单邮件传输协议(“SMTP”)等,或者使用其它非数据报协议)。

如所描绘的,在线商店301包括内容处理模块302、列表创建模块303、接口模块306和访问模块307。通常,内容处理模块302、列表创建模块303、接口模块306和访问模块307分别类似于内容处理模块102、列表创建模块103、接口模块106和访问模块107进行配置。

图4图示了用于向其它设备公布内容的示例方法400的流程图。方法400将关于计算机架构300的组件和数据进行描述。

方法400包括访问内容的一个版本(401)。例如,内容处理模块能够访问内容311。方法400包括针对该内容的该版本制定标识数据(402)。例如,内容处理模块302能够针对内容311A制定ID312。ID312将内容311A标识为内容311的一个版本。

方法400包括将版本对象与该内容的该版本相关联,该版本对象指示该内容的该版本以操作系统的指定版本为目标,该版本对象还包括受限发布属性,该受限发布属性的数值指示:该内容的该版本为受限制内容,并且针对该内容的可访问性被局限于被授权观看受限制内容的用户(403)。例如,内容处理模块302能够将版本对象314与内容311A进行关联。版本对象314可以指示内容311A以操作系统的指定版本为目标,诸如,例如Microsoft?Windows?的版本(Windows?8、Windows?8.1等)、APPLE?iOS?的版本,或者Google?AndroidTM的版本。如所描绘的,版本对象314包括发布属性316。发布属性316可以指示内容311A为受限制内容并且针对内容311A的可访问性被局限于被授权访问受限制内容的用户。

针对该内容的该版本创建列表(404)。例如,列表创建模块能够针对内容311A创建列表321。列表321包括名称323、内容311A(或指向内容311A的链接)和可见性324。针对该内容的该版本创建列表包括使用该标识数据来指示该列表在提供该内容的该版本(405)。例如,列表创建模块303能够使用ID312来指示列表321在提供内容311的一个版本(例如,通过创建名称323)。

针对该内容的该版本创建列表包括针对该列表设置可见性而使得该内容的该版本能由被授权观看受限制内容的用户所访问但是无法由其它用户所访问(406)。例如,列表创建模块303能够基于并对应于发布属性316而针对列表321设置可见性324。可见性324能够指示列表321的可见性被局限于被授权访问受限制内容的用户。

方法400包括依据该可见性在该在线商店呈现该列表(407)。例如,列表321能够依据可见性324进行呈现以向计算机系统317和352(以及其它计算机系统)提供内容311A。

在创建列表321之后,授权用户341能够在计算机系统317键入输入而使得计算机系统317向在线商店301发出内容请求。访问模块307能够检查授权用户341的证书以确定授权用户341被授权访问内容311A。基于该确定,在线商店301能够将列表321返回至计算机系统317。

公众用户342也能够在计算机系统351键入输入而使得计算机系统351向在线商店301发出内容请求。访问模块307能检查公众用户342的证书以确定公众用户342未被授权访问内容311A。基于该确定,在线商店301并不将列表321返回至计算机系统351。

管理员346能够向在线商店301发送属性设置344。属性设置344向在线商店301指示与版本对象314相关联的内容(包括内容311A和任意其它内容)要向公众进行公布。

在呈现该列表之后,在并不修改该内容的该版本的情况下并且在该在线商店保持运营的同时,方法400包括接收将该受限发布属性的数值变为新数值的输入,该新数值指示该内容的版本能够被公开获取(408)。例如,在呈现列表321之后,在并不修改该内容311A的情况下并且在在线商店301保持运营的同时,内容处理模块302能够从管理员346接收属性设置344。内容处理模块302能够对该属性设置344进行处理以从发布属性316变换为发布属性317。发布属性317表示内容311A能够被公开获取(即,向公众进行公布)。

在呈现该列表之后,在并不修改该内容的该版本的情况下并且在该在线商店保持运营的同时,方法400包括通过针对该列表设置新的可见性而针对该内容的该版本更新该列表,该新的可见性指示该内容的版本能够被公开看到(409)。例如,在呈现列表321之后,在并不修改该内容311A的情况下并且在在线商店301保持运营的同时,列表创建模块303能够通过针对列表321设置新的可见性326而更新列表321。可见性326指示列表321能够被公开看到。可见性326能够根据发布属性317所确定。

在呈现该列表之后,在并不修改该内容的该版本的情况下并且在该在线商店保持运营的同时,方法400包括依据该新的可见性在在线商店呈现该列表(410)。例如,列表321(经更新的)能够依据可见性326进行呈现从而向计算机系统317和352(以及其它计算机系统)提供内容311A。

在列表321被更新之后,授权用户341能够在计算机系统317键入输入而使得计算机系统317向在线商店301发出内容请求。访问模块307能够确定列表321能够被一般公众所看到并且能够向计算机系统317返回列表321。类似地,公众用户342也能够在计算机系统351键入输入而使得计算机系统351向在线商店301发出内容请求。访问模块307能够确定列表321能够被一般公众所看到并且能够向计算机系统351返回列表321。

在一些实施例中,计算机系统317和/或计算机系统351还向在线商店301发送系统数据。计算机系统317的系统数据能够从硬件组件和操作系统309(例如,操作系统的版本,其可以是或不是操作系统的指定版本)得到。计算机系统351的系统数据能够从硬件组件和操作系统353(例如,操作系统的版本,其可以是或不是操作系统的指定版本)得到。

在线商店301能够接收该系统数据。当内容311A被受限不分布至下级系统时(如发布属性317所指示的),访问模块307能够检查所接收到的系统数据以确定计算机系统317和/或计算机系统351是否为下级系统。当计算机系统为下级系统时,列表321就不向该计算机系统进行表示。

在一些实施例中,在线商店系统定义包括四个部分的版本对象:操作系统的次要/主要版本、应用平台版本和特定于商店的版本。这四个部分的元组能作为整数被存储。在一些实施例中,操作系统版本和应用平台版本匹配安装有商店客户端的机器上的相对应数值。该版本对象中特定于商店的部分允许该版本对象具有任由管理在线商店的人员进行处理的唯一数值。这些数值可以被视为发布。

在线商店中的对象(应用、包、关注和类别页面、主题页面、客户端页面、评级、评论等)被进行版本管理并且与一个OSVersion数值(发布)相关联。例如,单个应用(具有单个产品GUID和包族群名称)可以具有多个版本,每个版本与不同发布相关联。因此有利的是,内容对象(诸如应用或页面)的多个版本能够同时存在并且共享秘钥标识数据,同时呈现出不同的可应用型和可访问性表现。

版本对象可以包括受限发布属性,其确定与内容发布相关联的所有对象的可访问性级别。LimitedRelease数值1可以指示该发布中的对象能够被公开访问。LimitedRelease数值2可以指示发布中的对象能够由使用当前版本的操作系统的一般公众所访问但是无法被下级系统所访问。LimitedRelease数值3可以指示发布中的对象仅能够由被授权观看受限制版本的用户所访问。授权检查能够基于用户的在线商店账户。如果API的调用方尝试访问针对LimitedRelease数值为3的发布所指定的内容,则API层能够执行授权检查以验证该用户有资格访问该内容。其它LimitedRelease数值也可以被用来指示内容具有其它不同的限制。

这样,管理在线商店的人员具有针对相同操作系统和应用平台定义任意数量的发布的灵活性。例如,人员能够定义LimitedRelease数值为1的第一(公开)发布数值以及LimitedRelease数值为3的第二(受限制)发布(诸如针对操作系统的下一个版本)。针对第二发布所创建的内容能够被授权用户所看到并且能够在内部进行准备、验证和自行托管。并未被成功授权的用户无法看到针对第二发布所创建的内容。

当第二发布变为公开时,人员能够将该第二发布的LimitedRelease属性修改为2或1。修改LimitedRelease属性使得与第二发布相关联的内容公开而并没有进行任何的直接内容修改或重新上传。对于非授权用户而言,该内容就像其刚刚被上传上线一样。与此同时,第三(新的)发布数值可以被引入系统,这允许开始针对下一个版本准备内容。

因此,在内容创建的时间,内容作者能够从允许内容创建的活跃发布(例如,OSVersion数值)的列表中选择并且创建与那些发布相关联的内容。可以定义类似的许可检查以控制针对内容创建的受限制发布的访问。在内容消费的时间(例如,从商店客户端),适当发布的确定可以基于操作系统和应用平台的版本可应用性,商店客户端的构建编号,并且被记入用户用于访问受限制的LimitedRelease内容的许可之中。该元组能够被映射至OSVersion列表中的单个发布数值。一旦发布数值被确定,其就能够被用来获取客户端所请求的剩余内容。一些内容对象可以定义后退机制(如果没有找到匹配确切版本的对象,则能够获得下一个最高数值的版本)。其它内容对象可以选择在没有找到确切匹配时不返回数值。

图5图示了版本对象表格500的示例定义。在图5中描绘了两个发布(一个公开而一个受限制)。图6图示了应用元数据存储600的示例定义。图6描绘了(由应用ID1234所标识的)应用的两个版本。该应用的每个版本与不同发布相关联。图7图示了针对版本对象表格500的示例变化。如图7中所描绘的,使得发布0x08000101公开并且增加新的受限制发布0x08000101。

本发明可具体化为其它具体形式而不背离其精神或本质特征。所描述的实施例在所有方面都应被认为仅是说明性而非限制性的。因此,本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效方案的含义和范围内的所有改变被权利要求书的范围所涵盖。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号