Package org.exoplatform.services.jcr.storage

Examples of org.exoplatform.services.jcr.storage.WorkspaceStorageConnection


   /**
    * {@inheritDoc}
    */
   public WorkspaceStorageConnection openConnection(boolean readOnly) throws RepositoryException
   {
      WorkspaceStorageConnection con = connFactory.openConnection(readOnly);
      if (STATISTICS_ENABLED)
      {
         con = new StatisticsJDBCStorageConnection(con);
      }
      return con;
View Full Code Here


   /**
    * {@inheritDoc}
    */
   public ItemData getItemData(final String identifier) throws RepositoryException
   {
      final WorkspaceStorageConnection con = dataContainer.openConnection();
      try
      {
         return con.getItemData(identifier);
      }
      finally
      {
         con.close();
      }
   }
View Full Code Here

    */
   public List<PropertyData> getReferencesData(final String identifier, boolean skipVersionStorage)
      throws RepositoryException
   {

      final WorkspaceStorageConnection con = dataContainer.openConnection();
      try
      {
         final List<PropertyData> allRefs = con.getReferencesData(identifier);
         final List<PropertyData> refProps = new ArrayList<PropertyData>();
         for (int i = 0; i < allRefs.size(); i++)
         {
            PropertyData ref = allRefs.get(i);
            if (skipVersionStorage)
            {
               if (!ref.getQPath().isDescendantOf(Constants.JCR_VERSION_STORAGE_PATH))
                  refProps.add(ref);
            }
            else
               refProps.add(ref);
         }
         return refProps;
      }
      finally
      {
         con.close();
      }
   }
View Full Code Here

    * {@inheritDoc}
    */
   public List<NodeData> getChildNodesData(final NodeData nodeData) throws RepositoryException
   {

      final WorkspaceStorageConnection con = dataContainer.openConnection();
      try
      {
         return con.getChildNodesData(nodeData);
      }
      finally
      {
         con.close();
      }
   }
View Full Code Here

   /**
    * {@inheritDoc}
    */
   public int getChildNodesCount(NodeData parent) throws RepositoryException
   {
      final WorkspaceStorageConnection con = dataContainer.openConnection();
      try
      {
         return con.getChildNodesCount(parent);
      }
      finally
      {
         con.close();
      }
   }
View Full Code Here

   /**
    * {@inheritDoc}
    */
   public List<PropertyData> getChildPropertiesData(final NodeData nodeData) throws RepositoryException
   {
      final WorkspaceStorageConnection con = dataContainer.openConnection();
      try
      {
         return con.getChildPropertiesData(nodeData);
      }
      finally
      {
         con.close();
      }
   }
View Full Code Here

   /**
    * {@inheritDoc}
    */
   public List<PropertyData> listChildPropertiesData(final NodeData nodeData) throws RepositoryException
   {
      final WorkspaceStorageConnection con = dataContainer.openConnection();
      try
      {
         return con.listChildPropertiesData(nodeData);
      }
      finally
      {
         con.close();
      }
   }
View Full Code Here

            return;
         }
         else
         {
            // check in persistence
            final WorkspaceStorageConnection acon = dataContainer.openConnection();
            try
            {
               NodeData parent = (NodeData)acon.getItemData(node.getParentIdentifier());
               QPathEntry myName = node.getQPath().getEntries()[node.getQPath().getEntries().length - 1];
               ItemData sibling =
                  acon.getItemData(parent, new QPathEntry(myName.getNamespace(), myName.getName(),
                     myName.getIndex() - 1));
               if (sibling == null || !sibling.isNode())
               {
                  throw new InvalidItemStateException("Node can't be saved " + node.getQPath().getAsString()
                     + ". No same-name sibling exists with index " + (myName.getIndex() - 1) + ".");
               }
            }
            finally
            {
               acon.rollback();
            }
         }
      }
   }
View Full Code Here

   /**
    * {@inheritDoc}
    */
   public ItemData getItemData(final NodeData parentData, final QPathEntry name) throws RepositoryException
   {
      final WorkspaceStorageConnection con = dataContainer.openConnection();
      try
      {
         return con.getItemData(parentData, name);
      }
      finally
      {
         con.close();
      }
   }
View Full Code Here

         {
            logBrokenObjectAndSetInconsistency("Lock exists in ITEM table but not in LOCK table. Node UUID: " + nodeId);

            if (autoRepair)
            {
               WorkspaceStorageConnection conn = jdbcDataContainer.openConnection();
               try
               {
                  NodeData parent = (NodeData)conn.getItemData(nodeId);
                  PropertyData prop =
                     (PropertyData)conn.getItemData(parent, new QPathEntry(Constants.JCR_LOCKISDEEP, 0),
                        ItemType.PROPERTY);
                  conn.delete(prop);

                  prop =
                     (PropertyData)conn.getItemData(parent, new QPathEntry(Constants.JCR_LOCKOWNER, 0),
                        ItemType.PROPERTY);
                  conn.delete(prop);

                  conn.commit();

                  logComment("Lock has been removed form ITEM table. Node UUID: " + nodeId);
               }
               catch (RepositoryException e)
               {
                  conn.rollback();
                  throw e;
               }
            }
         }
      }
View Full Code Here

TOP

Related Classes of org.exoplatform.services.jcr.storage.WorkspaceStorageConnection

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.