示例#1
0
        public string Get()
        {
            string AuthorizedName;

            SqlStoredProcedureAccessor sp = new SqlStoredProcedureAccessor("net_publisher_assertions_get");

            sp.Parameters.Add("@PUID", SqlDbType.NVarChar, UDDI.Constants.Lengths.UserID);
            sp.Parameters.Add("@authorizedName", SqlDbType.NVarChar, UDDI.Constants.Lengths.AuthorizedName, ParameterDirection.Output);

            sp.Parameters.SetString("@PUID", Context.User.ID);

            SqlDataReaderAccessor reader = sp.ExecuteReader();

            try
            {
                while (reader.Read())
                {
                    Add(
                        reader.GetGuidString("fromKey"),
                        reader.GetGuidString("toKey"),
                        reader.GetGuidString("keyName"),
                        reader.GetGuidString("keyValue"),
                        reader.GetKeyFromGuid("tModelKey"));
                }
            }
            finally
            {
                reader.Close();
            }
            AuthorizedName = sp.Parameters.GetString("@authorizedName");
            return(AuthorizedName);
        }
示例#2
0
        public void Get(string fromKey, string toKey)
        {
            SqlStoredProcedureAccessor sp = new SqlStoredProcedureAccessor();

            sp.ProcedureName = "net_businessEntity_assertions_get";

            sp.Parameters.Add("@fromKey", SqlDbType.UniqueIdentifier);
            sp.Parameters.Add("@toKey", SqlDbType.UniqueIdentifier);
            sp.Parameters.Add("@completionStatus", SqlDbType.Int);

            sp.Parameters.SetGuidFromString("@fromKey", fromKey);
            sp.Parameters.SetGuidFromString("@toKey", toKey);
            sp.Parameters.SetInt("@completionStatus", (int)CompletionStatusType.Complete);

            SqlDataReaderAccessor reader = sp.ExecuteReader();

            try
            {
                while (reader.Read())
                {
                    KeyedReferences.Add(
                        reader.GetString("keyName"),
                        reader.GetString("keyValue"),
                        reader.GetKeyFromGuid("tModelKey"));
                }
            }
            finally
            {
                reader.Close();
            }
        }
示例#3
0
 public void Read(SqlDataReaderAccessor reader)
 {
     while (reader.Read())
     {
         Add(reader.GetString("keyName"),
             reader.GetString("keyValue"),
             reader.GetKeyFromGuid("tModelKey"));
     }
 }
示例#4
0
        public ArrayList Read(SqlDataReaderAccessor reader)
        {
            ArrayList addressIDs = new ArrayList();

            if (1 == Context.ApiVersionMajor)
            {
                while (reader.Read())
                {
                    addressIDs.Add(reader.GetLong("addressID"));
                    Add(reader.GetString("sortCode"), reader.GetString("useType"));
                }
            }
            else
            {
                while (reader.Read())
                {
                    addressIDs.Add(reader.GetLong("addressID"));
                    Add(reader.GetString("sortCode"), reader.GetString("useType"), reader.GetKeyFromGuid("tModelKey"));
                }
            }

            return(addressIDs);
        }
示例#5
0
        public void Get(string parentKey, EntityType parentType, KeyedReferenceType keyedReferenceType)
        {
            Debug.Enter();

            SqlStoredProcedureAccessor sp = new SqlStoredProcedureAccessor();

            switch (parentType)
            {
            case EntityType.BusinessEntity:
                if (KeyedReferenceType.CategoryBag == keyedReferenceType)
                {
                    sp.ProcedureName = "net_businessEntity_categoryBag_get";
                }
                else
                {
                    sp.ProcedureName = "net_businessEntity_identifierBag_get";
                }

                sp.Parameters.Add("@businessKey", SqlDbType.UniqueIdentifier);
                sp.Parameters.SetGuidFromString("@businessKey", parentKey);

                break;

            case EntityType.BusinessService:
                Debug.Assert(
                    KeyedReferenceType.CategoryBag == keyedReferenceType,
                    "Unexpected keyed reference type '" + keyedReferenceType.ToString()
                    + "' for parent entity type '" + parentType.ToString() + "'");

                sp.ProcedureName = "net_businessService_categoryBag_get";

                sp.Parameters.Add("@serviceKey", SqlDbType.UniqueIdentifier);
                sp.Parameters.SetGuidFromString("@serviceKey", parentKey);

                break;

            case EntityType.TModel:
                if (KeyedReferenceType.CategoryBag == keyedReferenceType)
                {
                    sp.ProcedureName = "net_tModel_categoryBag_get";
                }
                else
                {
                    sp.ProcedureName = "net_tModel_identifierBag_get";
                }

                sp.Parameters.Add("@tModelKey", SqlDbType.UniqueIdentifier);
                sp.Parameters.SetGuidFromKey("@tModelKey", parentKey);

                break;

            default:
                throw new UDDIException(ErrorType.E_fatalError, "UDDI_ERROR_UNEXPECTED_PARENT_ENTITY_TYPE", parentType.ToString());
            }

            SqlDataReaderAccessor reader = sp.ExecuteReader();

            try
            {
                Read(reader);
#if never
                while (reader.Read())
                {
                    Add(
                        reader.GetString("keyName"),
                        reader.GetString("keyValue"),
                        reader.GetKeyFromGuid("tModelKey"));
                }
#endif
            }
            finally
            {
                reader.Close();
            }

            Debug.Leave();
        }
示例#6
0
        public void Get(long contactID)
        {
            ArrayList addressIDs          = new ArrayList();
            SqlStoredProcedureAccessor sp = new SqlStoredProcedureAccessor("net_contact_addresses_get");

            sp.Parameters.Add("@contactID", SqlDbType.BigInt);
            sp.Parameters.SetLong("@contactID", contactID);

            SqlDataReaderAccessor reader = sp.ExecuteReader();

            try
            {
                addressIDs = Read(reader);
            }
            finally
            {
                reader.Close();
            }

            Populate(addressIDs);

#if never
            ArrayList addressIDs          = new ArrayList();
            SqlStoredProcedureAccessor sp = new SqlStoredProcedureAccessor();

            sp.ProcedureName = "net_contact_addresses_get";

            sp.Parameters.Add("@contactID", SqlDbType.BigInt);
            sp.Parameters.SetLong("@contactID", contactID);

            SqlDataReaderAccessor reader = sp.ExecuteReader();

            try
            {
                if (1 == Context.ApiVersionMajor)
                {
                    while (reader.Read())
                    {
                        addressIDs.Add(reader.GetLong("addressID"));
                        Add(reader.GetString("sortCode"), reader.GetString("useType"));
                    }
                }
                else
                {
                    while (reader.Read())
                    {
                        addressIDs.Add(reader.GetLong("addressID"));
                        Add(reader.GetString("sortCode"), reader.GetString("useType"), reader.GetKeyFromGuid("tModelKey"));
                    }
                }
            }
            finally
            {
                reader.Close();
            }

            //
            // Retrieve the addressLines for this address
            //
            int index = 0;

            foreach (Address address in this)
            {
                address.Get((long)addressIDs[index]);
                index++;
            }
#endif
        }
示例#7
0
        public void Get(CompletionStatusType completionStatus)
        {
            SqlStoredProcedureAccessor sp = new SqlStoredProcedureAccessor("net_publisher_assertionStatus_get");

            sp.Parameters.Add("@PUID", SqlDbType.NVarChar, UDDI.Constants.Lengths.UserID);
            sp.Parameters.SetString("@PUID", Context.User.ID);

            if (CompletionStatusType.Uninitialized != completionStatus)
            {
                //
                // If the completion status was not specified get all
                // of the assertions by not specifying a completionStatus value
                // in the stored procedure.
                //
                sp.Parameters.Add("@completionStatus", SqlDbType.Int);
                sp.Parameters.SetInt("@completionStatus", (int)completionStatus);
            }

            SqlDataReaderAccessor reader = sp.ExecuteReader();

            try
            {
                while (reader.Read())
                {
                    KeyedReference keyedReference = new KeyedReference(
                        reader.GetString("keyName"),
                        reader.GetString("keyValue"),
                        reader.GetKeyFromGuid("tModelKey"));

                    CompletionStatusType status =
                        (CompletionStatusType)reader.GetInt("flag");

                    string fromKey = reader.GetGuidString("fromKey");
                    string toKey   = reader.GetGuidString("toKey");

                    int ownerFlag = reader.GetInt("ownerFlag");

                    KeysOwned keysOwned = new KeysOwned();

                    if (0x02 == (ownerFlag & 0x02))
                    {
                        keysOwned.FromKey = fromKey;
                    }

                    if (0x01 == (ownerFlag & 0x01))
                    {
                        keysOwned.ToKey = toKey;
                    }

                    this.Add(
                        new AssertionStatusItem(
                            status,
                            fromKey,
                            toKey,
                            keyedReference,
                            keysOwned));
                }
            }
            finally
            {
                reader.Close();
            }
        }