PersistentObject

PersistentObject["name",loc]

represents a persistent object stored at persistence location loc.

Details

  • PersistentObject["name",loc]["meta"]=val sets the metadata element "meta" to val.
  • The following metadata elements can be given:
  • "Value"Nullthe value of the persistent object itself
    "HeldValue"Hold[Null]the value wrapped in Hold
    "MergingFunction"Automaticthe default merging function to use
    "ValuePreprocessingFunction"Identitythe function applied to new values to be assigned
    "ModificationDate"Nonetime stamp of last modification
    "ExpirationDate"Nonetime after which data is no longer used
    "Creator"$Usernameuser who last modified the object
  • PersistentObject["name",loc][All] gives the association of all metadata.
  • DeleteObject[PersistentObject[]] removes a persistent object from the specified location.
  • In PersistentObject["name",loc], possible forms for the persistence location loc include:
  • PersistenceLocation["type"]"Local", "Cloud", etc. locations
    "type"equivalent to PersistenceLocation["type"]
    PersistenceLocation["type","base"]location with a particular base (directory etc.)
    "type""base"equivalent to PersistenceLocation["type","base"]
  • Supported location types include:
  • "KernelSession"current invocation of the Wolfram Language kernel
    "FrontEndSession"current invocation of the Wolfram Notebook front end
    "ServerSession"persistence for requests on a single web server
    "CookieManaged"persistence based on a Wolfram browser cookie
    "Local"local to a computer, based on user home directory
    "LocalShared"local to a computer, based on $BaseDirectory
    "Cloud"in the cloud defined by the current $CloudBase
    "Installation"installation defaults

Examples

open all close all

Basic Examples  (2)

Create a persistent object by assigning it a value:

In[1]:=
Click for copyable input
In[2]:=
Click for copyable input
Out[2]=

Give all metadata of the object:

In[3]:=
Click for copyable input
Out[3]=

Give a specific meta element:

In[4]:=
Click for copyable input
Out[4]=

Remove a persistent object:

In[1]:=
Click for copyable input
In[2]:=
Click for copyable input

Remove all persistent objects with a given key on $ContextPath:

In[3]:=
Click for copyable input

Scope  (1)

Properties & Relations  (3)

Possible Issues  (1)

Introduced in 2017
(11.1)
|
Updated in 2019
(12.0)