-
Notifications
You must be signed in to change notification settings - Fork 19
Proposed API
dantleech edited this page Feb 9, 2014
·
7 revisions
The shell should provide full access to the PHPCR implementation.
session:export:document-view : Session::exportDocumentView
session:export:system-view : Session::exportSystemView
session:import parent_abs_path uri --uid_behavior=[create_new,collision_remove_existing,collision_replace_existing,collision_throw]
: Session::exportSystemView
session:info : Session::{getAAtribute,getAttributeNames,getRepository,getUserID,getWorkspace}
session:node:show : Session::{getNode,getNodeByIdentifier,getProperties,getProperty}
session:node:move src_abs_path dest_abs_path : Session::{getNode,getNodeByIdentifier,getProperties,getProperty}
session:item:show : Session::getItem
session:namespace:list : Session::{getNamespacePrefixes,getNamespaceURI,getNamespacePrefix}
session:namespace:set prefix uri : Session::setNamespacePrefixes
session:logout : Session::logout
session:refresh : Session::refreshA
session:item:remove : Session::removeItem
session:save : Session::save
session:impersonate username [attributes] : Session::impersonate
retention:hold:list abs_path : RetentionManager::getHolds
retention:hold:add abs_path name --deep : RetentionManager::addHold
retention:hold:remove abs_path name : RetentionManager::removeHold
retention:policy:get abs_path : RetentionManager::getRetentionPolicy
acm:privilege:list abs_path : AccessControlManager::getSupportedPrivleges
acm:policy:list abs_path --effective --applicable : AccessControlManager::{getApplicablePolicies,getEffectivePolicies,getPolicies}
acm:privilege:list abs_path --supported :
acm:session:privilege:list : AccessControlManager::getPrivleges
workspace:node:copy src_abs_path dest_abs_path src_workspace
: Workspace::copy
workspace:node:clone-from src_workspace src_abs_path dest_abs_path --remove-existing
: Workspace::copy
workspace:create name : Workspace::create
workspace:delete name : Workspace::delete
workspace:list : Workspace::getAccessibleWorkspaceNames
workspace:info : Workspace::getName
workspace:query QUERY --lang=<lang> : QueryManager::{createQuery,QueryManager::getSupportedQueryLanguages}
Note the create and edit commands will open an external EDITOR as defined by the environment
node-type:show node_type_name : NodeTypeManager::getNodeType
node-type:list --primary --mixin : NodeTypeManager::{getAllNodeType,getPrimaryNodeTypes,getMixinNodeTypes}
node-type:create node_type_name : NodeTypeManager::{registerNodeTypesCnd}
node-type:edit node_type_name : NodeTypeManager::{registerNodeTypesCnd}
node-type:load cnd_path --allow-update : NodeTypeManager::{registerNodeTypesCnd}
node-type:unregister node_type_name : NodeTypeManager::unregisterNodeType
Can we reference versions by a hash? == VersionHistoryInterface::getVersionableIdentifier
version:checkin abs_path : VersionManager::checkin
version:checkout abs_path : VersionManager::checkout
version:checkpoint abs_path : VersionManager::checkpoint
version:history abs_path : VersionManager::versionHistory
version:show abs_path --id=<id> --label=<label> : VersionManager::getVersion,VersionInterface::getFrozenNode,VersionHistoryInterface::getAllLinearFrozenNodes
version:remove <id>
version:remove-label <label>
All node operations take place in CWD
node:create [name] --before=<node_name> : Node::{addNode,addNodeAutoNamed}
node:reorder dest_child_rel_path : Node::orderBefore
node:rename new_name : Node::rename
node:set name value type : Node::setProperty
node:info : Node::{getIdentifier,getPath,getIndex,getPrimaryNodeType,getMixinNodeTypes,isCheckedOut}
node:definition : Node::{getDefinition}
node:references <name> --weak : Node::{getReferences,getWeakReferences}
node:list --children --properties : Node::{getNodes,getProperties,getNodeNames}
node:type:set-primary : Node::setPrimaryType
node:type:mixin-add <mixin_name> : Node::addMixin
node:type:mixin-remove <mixin_name> : Node::removeMixin
node:workspace:corresponding workspace_name : Node::getCorrespondingNodePath
node:workspace:update workspace_name : Node::update
node:shared:show : Node::getSharedSet
node:shared:remove : Node::removeSharedSet
node:lifecycle:follow-transition <transition> : Node::followLifecycleTransition
node:lifecycle:list : Node::getAllowedLifecycleTransitions
lock:add-token <name> : LockManager::addLockToken
lock:remove-token <name> : LockManager::removeToken
lock:get <abs_path> : LockManager:get
lock:info <abs_path> : LockManager:holdsLock,isLocked
lock:lock <abs_path> --deep --session-scoped --timeout-hint=<seconds> --owner-info=<string>
lock:unlock <abs_path>