Search in sources :

Example 91 with Node

use of com.enonic.xp.node.Node in project xp by enonic.

the class RepositoryServiceImpl method pushRootNode.

private void pushRootNode(final Repository currentRepo, final Branch branch) {
    final Context context = ContextAccessor.current();
    final InternalContext internalContext = InternalContext.create(context).branch(RepositoryConstants.MASTER_BRANCH).build();
    final Node rootNode = this.nodeStorageService.get(Node.ROOT_UUID, internalContext);
    if (rootNode == null) {
        throw new NodeNotFoundException("Cannot find root-node in repository [" + currentRepo + "]");
    }
    this.nodeStorageService.push(rootNode, branch, internalContext);
}
Also used : InternalContext(com.enonic.xp.repo.impl.InternalContext) Context(com.enonic.xp.context.Context) NodeNotFoundException(com.enonic.xp.node.NodeNotFoundException) InternalContext(com.enonic.xp.repo.impl.InternalContext) Node(com.enonic.xp.node.Node)

Example 92 with Node

use of com.enonic.xp.node.Node in project xp by enonic.

the class NodeStorageServiceImpl method loadVersionMetadata.

private void loadVersionMetadata(final LoadVersionMetadataParams loadVersionMetadataParams) {
    final Node node = loadVersionMetadataParams.getNode();
    this.versionService.store(NodeVersionMetadata.create().nodeId(node.id()).nodeVersionId(loadVersionMetadataParams.getNodeVersionId()).nodeVersionKey(loadVersionMetadataParams.getNodeVersionKey()).binaryBlobKeys(getBinaryBlobKeys(node.getAttachedBinaries())).nodePath(node.path()).nodeCommitId(loadVersionMetadataParams.getNodeCommitId()).timestamp(node.getTimestamp()).build(), loadVersionMetadataParams.getContext());
}
Also used : Node(com.enonic.xp.node.Node)

Example 93 with Node

use of com.enonic.xp.node.Node in project xp by enonic.

the class NodeStorageServiceImpl method storeBranchMetadata.

private void storeBranchMetadata(final StoreBranchMetadataParams storeBranchMetadataParams) {
    final Node node = storeBranchMetadataParams.getNode();
    this.branchService.store(NodeBranchEntry.create().nodeVersionId(storeBranchMetadataParams.getNodeVersionId()).nodeVersionKey(storeBranchMetadataParams.getNodeVersionKey()).nodeId(node.id()).nodeState(node.getNodeState()).timestamp(node.getTimestamp()).nodePath(node.path()).build(), storeBranchMetadataParams.getContext());
}
Also used : Node(com.enonic.xp.node.Node)

Example 94 with Node

use of com.enonic.xp.node.Node in project xp by enonic.

the class NodeStorageServiceImpl method load.

@Override
public Node load(final LoadNodeParams params, final InternalContext context) {
    final Node node = params.getNode();
    final NodeVersion nodeVersion = NodeVersion.create().id(node.id()).nodeType(node.getNodeType()).data(node.data()).indexConfigDocument(node.getIndexConfigDocument()).childOrder(node.getChildOrder()).manualOrderValue(node.getManualOrderValue()).permissions(node.getPermissions()).inheritPermissions(node.inheritsPermissions()).attachedBinaries(node.getAttachedBinaries()).build();
    final NodeVersionId nodeVersionId = node.getNodeVersionId();
    final NodeVersionKey nodeVersionKey = nodeVersionService.store(nodeVersion, context);
    final LoadVersionMetadataParams loadVersionMetadataParams = LoadVersionMetadataParams.create().node(node).nodeVersionId(nodeVersionId).nodeVersionKey(nodeVersionKey).nodeCommitId(params.getNodeCommitId()).context(context).build();
    loadVersionMetadata(loadVersionMetadataParams);
    final StoreBranchMetadataParams storeBranchMetadataParams = StoreBranchMetadataParams.create().node(node).nodeVersionId(nodeVersionId).nodeVersionKey(nodeVersionKey).context(context).build();
    storeBranchMetadata(storeBranchMetadataParams);
    indexNode(node, nodeVersionId, context);
    return Node.create(node).nodeVersionId(nodeVersionId).build();
}
Also used : NodeVersion(com.enonic.xp.node.NodeVersion) NodeVersionId(com.enonic.xp.node.NodeVersionId) RoutableNodeVersionId(com.enonic.xp.node.RoutableNodeVersionId) NodeVersionKey(com.enonic.xp.blob.NodeVersionKey) Node(com.enonic.xp.node.Node)

Example 95 with Node

use of com.enonic.xp.node.Node in project xp by enonic.

the class VersionTableVacuumCommand method findVersionsInBranches.

private BRANCH_CHECK_RESULT findVersionsInBranches(final Repository repository, final NodeVersionMetadata versionMetadata) {
    final NodeId nodeId = versionMetadata.getNodeId();
    final NodeVersionId versionId = versionMetadata.getNodeVersionId();
    boolean nodeFound = false;
    for (final Branch branch : repository.getBranches()) {
        try {
            final Node node = ContextBuilder.from(ContextAccessor.current()).branch(branch).repositoryId(repository.getId()).build().callWith(() -> this.nodeService.getById(nodeId));
            if (versionId.equals(node.getNodeVersionId())) {
                return BRANCH_CHECK_RESULT.SAME_VERSION_FOUND;
            }
            nodeFound = true;
        } catch (NodeNotFoundException e) {
        // Ignore
        }
    }
    return nodeFound ? BRANCH_CHECK_RESULT.OTHER_VERSION_FOUND : BRANCH_CHECK_RESULT.NO_VERSION_FOUND;
}
Also used : NodeNotFoundException(com.enonic.xp.node.NodeNotFoundException) NodeVersionId(com.enonic.xp.node.NodeVersionId) Branch(com.enonic.xp.branch.Branch) Node(com.enonic.xp.node.Node) NodeId(com.enonic.xp.node.NodeId)

Aggregations

Node (com.enonic.xp.node.Node)521 Test (org.junit.jupiter.api.Test)371 PropertyTree (com.enonic.xp.data.PropertyTree)114 NodeId (com.enonic.xp.node.NodeId)52 AbstractNodeTest (com.enonic.xp.repo.impl.node.AbstractNodeTest)51 NodePath (com.enonic.xp.node.NodePath)45 CreateNodeParams (com.enonic.xp.node.CreateNodeParams)42 UpdateNodeParams (com.enonic.xp.node.UpdateNodeParams)34 FindNodesByQueryResult (com.enonic.xp.node.FindNodesByQueryResult)32 FindNodesByParentResult (com.enonic.xp.node.FindNodesByParentResult)29 NodeQuery (com.enonic.xp.node.NodeQuery)27 AccessControlList (com.enonic.xp.security.acl.AccessControlList)27 BinaryReference (com.enonic.xp.util.BinaryReference)26 ByteSource (com.google.common.io.ByteSource)24 Content (com.enonic.xp.content.Content)23 PropertySet (com.enonic.xp.data.PropertySet)20 NodeIds (com.enonic.xp.node.NodeIds)18 Context (com.enonic.xp.context.Context)17 InternalContext (com.enonic.xp.repo.impl.InternalContext)17 Application (com.enonic.xp.app.Application)16