Package nexj.core.persistence

Examples of nexj.core.persistence.OID


            }
         }
      }

      Index pk = m_table.getPrimaryKey();
      OID oid = m_instance.getOID();

      for (int i = 0, n = pk.getIndexColumnCount(); i < n; ++i)
      {
         Column column = pk.getIndexColumn(i).getColumn();

         value = m_adapter.toBind(column, oid.getValue(i));

         if (m_adapter.isDebug())
         {
            m_adapter.logBindValue(nValCount, value);
         }
View Full Code Here


    * @param nValCount The count of the already set bind values.
    */
   private void bindInsert(PreparedStatement stmt, int nValCount) throws SQLException
   {
      Index pk = m_table.getPrimaryKey();
      OID oid = m_instance.getOID();
      Object value;

      for (int i = 0, n = pk.getIndexColumnCount(); i < n; ++i)
      {
         Column column = pk.getIndexColumn(i).getColumn();

         if (getValue(column) == Undefined.VALUE)
         {
            value = m_adapter.toBind(column, oid.getValue(i));
  
            if (m_adapter.isDebug())
            {
               m_adapter.logBindValue(nValCount, value);
            }
  
            m_adapter.getBind(column).setValue(stmt, nValCount++, value, m_adapter);
         }
      }

      for (int i = 0, n = m_table.getColumnCount(); i < n; ++i)
      {
         value = getValue(i);
        
         if (value != Undefined.VALUE)
         {
            Column column = m_table.getColumn(i);

            value = m_adapter.toBind(column, value);

            Bind bind = m_adapter.getBind(column);

            if (m_adapter.isDebug())
            {
               m_adapter.logBindValue(nValCount, value);
            }

            bind.setValue(stmt, nValCount++, value, m_adapter);

            if (m_adapter.isCaseConverted(column))
            {
               if (m_adapter.isDebug())
               {
                  m_adapter.logBindValue(nValCount, value);
               }

               bind.setValue(stmt, nValCount++, value, m_adapter);
            }
         }
      }

      if (m_bDenorm)
      {
         for (int i = 0, n = pk.getIndexColumnCount(); i < n; ++i)
         {
            Column column = pk.getIndexColumn(i).getColumn();
  
            value = m_adapter.toBind(column, oid.getValue(i));
  
            if (m_adapter.isDebug())
            {
               m_adapter.logBindValue(nValCount, value);
            }
View Full Code Here

               if (m_right.isConstant())
               {
                  if (m_right.getValue() != null)
                  {
                     OID oid = ((OIDHolder)m_right.getValue()).getOID();

                     if (oid != null)
                     {
                        valueArray = adapter.getValues(oid, m_left.getSource());
View Full Code Here

         if (!(m_left.getValue() instanceof OIDHolder))
         {
            throw new TypeMismatchException(getSymbol());
         }

         OID oid = ((OIDHolder)m_left.getValue()).getOID();

         if (oid != null)
         {
            leftValues = oid.getValueArray();
         }
         else
         {
            bReference = true;
         }
      }

      Object[] rightValues = null;

      if (m_right.getValue() != null)
      {
         if (!(m_right.getValue() instanceof OIDHolder))
         {
            throw new TypeMismatchException(getSymbol());
         }

         OID oid = ((OIDHolder)m_right.getValue()).getOID();

         if (oid != null)
         {
            rightValues = oid.getValueArray();
         }
         else
         {
            bReference = true;
         }
View Full Code Here

      Object leftValue = m_left.getValue();

      if (leftValue instanceof OIDHolder)
      {
         Object rightValue = m_right.getValue();
         OID rightOID = (rightValue instanceof OIDHolder) ? ((OIDHolder)rightValue).getOID() : null;

         return Boolean.valueOf(compareToPredicate(((OIDHolder)leftValue).getOID().compareTo(rightOID)));
      }

      if (leftValue == null)
View Full Code Here

                     {
                        op.setType(null);
                     }
                     else
                     {
                        OID oid = ((OIDHolder)op.getValue()).getOID();

                        if (oid != null)
                        {
                           Object[] valueArray = adapter.getValues(oid, m_source);

                           if (valueArray.length != 1)
                           {
                              throw new TypeMismatchException(getSymbol());
                           }

                           op.setValue(valueArray[0]);
                           op.setType(Primitive.primitiveOf(op.getValue()));
                        }
                        else
                        {
                           removeOperand(i--);
                        }
                     }
                  }

                  return normalize(nFlags | NORMALIZE_NORECUR);
               }
               else
               {
                  OrOperator or = new OrOperator();

                  for (int i = 1; i < m_nOperandCount; ++i)
                  {
                     Operator op = m_operandArray[i];
                     Object[] valueArray = null;

                     if (op.getValue() != null)
                     {
                        OID oid = ((OIDHolder)op.getValue()).getOID();

                        if (oid != null)
                        {
                           valueArray = adapter.getValues(oid, m_source);
View Full Code Here

         if (!(first.getValue() instanceof OIDHolder))
         {
            throw new TypeMismatchException(getSymbol());
         }

         OID oid = ((OIDHolder)first.getValue()).getOID();

         if (oid != null)
         {
            firstValues = oid.getValueArray();
         }
         else
         {
            bFirstReference = true;
         }
      }

      for (int i = 1; i < m_nOperandCount; ++i)
      {
         Operator op = m_operandArray[i];
         Object[] opValues = null;
         boolean bReference = false;

         if (op.getValue() != null)
         {
            if (!(op.getValue() instanceof OIDHolder))
            {
               throw new TypeMismatchException(getSymbol());
            }

            OID oid = ((OIDHolder)op.getValue()).getOID();

            if (oid != null)
            {
               opValues = oid.getValueArray();
            }
            else
            {
               bReference = true;
            }
View Full Code Here

         return Boolean.FALSE;
      }

      if (firstValue instanceof OIDHolder)
      {
         OID firstOID = ((OIDHolder)firstValue).getOID();

         for (int i = 1; i < m_nOperandCount; ++i)
         {
            Object argValue = m_operandArray[i].getValue();
            OID oid = (argValue instanceof OIDHolder) ? ((OIDHolder)argValue).getOID() : null;

            if (firstOID.compareTo(oid) == 0)
            {
               return Boolean.TRUE;
            }
View Full Code Here

    * Computes the OID based on table column values.
    * @return The computed OID.
    */
   public final OID computeOID()
   {
      OID oldOID = m_instance.getOID();
      Index pk = m_table.getPrimaryKey();
      int nCount = pk.getIndexColumnCount();
      Object[] values = null;

      for (int i = 0; i < nCount; ++i)
      {
         Column column = pk.getIndexColumn(i).getColumn();
         Object value = m_valueArray[column.getOrdinal()];
        
         if (value == Undefined.VALUE)
         {
            if (oldOID == null)
            {
               return null;
            }
           
            value = oldOID.getValue(i);
         }

         if (value == null)
         {
            return null;
         }
        
         if (values == null)
         {
            values = new Object[nCount];
         }

         values[i] = value;
      }

      return new OID(values);
   }
View Full Code Here

            }
         }
      }
      else
      {
         OID oid = instance.getOID();

         if (srcKey.isObjectKey() && nCount != oid.getCount())
         {
            throw new PersistenceException("err.rpc.oidPartCount",
               new Object[]{m_instance.getMetaclass().getName()});
         }

         for (int i = 0; i < nCount; ++i)
         {
            setInstanceValue(index.getIndexColumn(i).getColumn(), oid.getValue(srcKey.getObjectKeyPartOrdinal(i)));
         }
      }
   }
View Full Code Here

TOP

Related Classes of nexj.core.persistence.OID

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.