/// <summary>
        ///
        /// </summary>
        /// <param name="objValidateSKURequest"></param>
        /// <returns></returns>
        public ValidateSKUResponse ValidateSKUVersions(ValidateSKURequest objValidateSKURequest)
        {
            var objValidateSKUResponse = new ValidateSKUResponse();

            objValidateSKUResponse.RequestID        = objValidateSKURequest.RequestID;
            objValidateSKUResponse.ResponseID       = objValidateSKURequest.RequestID;
            objValidateSKUResponse.ResponseDateTime = DateTime.UtcNow;
            objValidateSKUResponse.ResponseStatus   = (int)Constants.ResponseStatus.Success;
            objValidateSKUResponse.ResponseMessage  = Constants.ResponseStatus.Success.ToString();
            objValidateSKUResponse.SKUID            = new Response_SKUVersionInfo[objValidateSKURequest.SKUID.Length];

            for (int i = 0; i < objValidateSKURequest.SKUID.Length; i++)
            {
                objValidateSKUResponse.SKUID[i] = CreateResponseInfo(objValidateSKURequest.SKUID[i].SKUID);
            }
            //Start ValidateSKU Process

            try
            {
                //ASSIGNING ID'S
                objValidateSKUResponse.RequestID  = objValidateSKURequest.RequestID;
                objValidateSKUResponse.ResponseID = objValidateSKURequest.RequestID;

                //INPUT DATA VALIDATION
                if (objValidateSKUBL.ValidateRequest(objValidateSKURequest, objValidateSKUResponse))
                {
                    //PROCESS DATA & RETURN RESPONSE
                    objValidateSKUBL.ProcessRequest(objValidateSKURequest, objValidateSKUResponse);
                }
            }
            catch (Exception ex)
            {
                //SET FAILURE STATUS
                objValidateSKUResponse.ResponseStatus  = (int)Constants.ResponseStatus.ServiceUnavailable;
                objValidateSKUResponse.ResponseMessage = Constants.ResponseMessage[1000].ToString();

                //LOG EXCEPTION
                objEventLogger.WriteLog(ex.Message + Environment.NewLine + ex.StackTrace, objValidateSKURequest.RequestingSystem, DateTime.UtcNow, objValidateSKURequest.RequestID);
            }
            finally
            {
                objValidateSKUResponse.ResponseDateTime = DateTime.UtcNow;


                //SERIALIZE REQUEST/RESPONSE
                string request  = "GetValidateSKURequest";
                string response = "GetValidateSKUResponse";

                try
                {
                    request  = Util.SerializeObject(objValidateSKURequest);
                    response = Util.SerializeObject(objValidateSKUResponse);
                }
                catch (Exception ex)
                {
                    objEventLogger.WriteLog("Request/Response Object Serialization Error: " + ex.Message + Environment.NewLine + ex.StackTrace, objValidateSKURequest.RequestingSystem, DateTime.UtcNow, objValidateSKURequest.RequestID);
                }

                if (!request.IsValidString())
                {
                    request = "GetValidateSKURequest";
                }
                if (!response.IsValidString())
                {
                    response = "GetValidateSKUResponse";
                }


                //LOG REQUEST/RESPONSE
                objTransactionLogger.LogTransaction(objValidateSKURequest.RequestID, objValidateSKURequest.RequestDateTime, objValidateSKURequest.RequestingSystem,
                                                    request, objValidateSKUResponse.ResponseID, objValidateSKUResponse.ResponseDateTime, response,
                                                    objValidateSKUResponse.ResponseStatus, objValidateSKUResponse.ResponseMessage, 0);

                //End Processing GetValidateSKU
            }

            //GetValidateSKU ends
            return(objValidateSKUResponse);
        }
Example #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="objGetParentChildAssociationRequest"></param>
        /// <returns></returns>
        public GetSNHierarchyResponse GetSNHierarchy(GetSNHierarchyRequest objGetSNHierarchyRequest)
        {
            GetSNHierarchyResponse objGetSNHierarchyResponse = new GetSNHierarchyResponse();
            GetSNHierarchyBL       objBL = new GetSNHierarchyBL();

            try
            {
                //do validation here
                if (objBL.ValidateRequest(objGetSNHierarchyRequest, objGetSNHierarchyResponse))
                {
                    objBL.ProcessRequest(objGetSNHierarchyRequest, objGetSNHierarchyResponse);
                }
            }
            catch (Exception ex)
            {
                //SET FAILURE STATUS
                objGetSNHierarchyResponse.ResponseStatus  = (int)Constants.ResponseStatus.ServiceUnavailable;
                objGetSNHierarchyResponse.ResponseMessage = Constants.ResponseMessage[1000].ToString();

                //LOG EXCEPTION
                objEventLogger.WriteLog(ex.Message + Environment.NewLine + ex.StackTrace, objGetSNHierarchyRequest.RequestingSystem, DateTime.UtcNow, objGetSNHierarchyRequest.RequestID);
            }
            finally
            {
                objGetSNHierarchyResponse.ResponseDateTime = DateTime.UtcNow;

                if (objGetSNHierarchyRequest.SNum != null)
                {
                    for (int s = 0; s < objGetSNHierarchyRequest.SNum.Length; s++)
                    {
                        if (objGetSNHierarchyRequest.SNum[s].Length > 0)
                        {
                            //if ((objGetSNHierarchyRequest.Filter != null))
                            //{
                            //    if (objGetSNHierarchyRequest.Filter.LookupFilter == null)
                            //    {
                            //        objGetSNHierarchyResponse.Association[s].Status = (int)Constants.ResponseStatus.InvalidParameter;
                            //        objGetSNHierarchyResponse.Association[s].Message = "Please select LookUp Filter (FilterName and FilterValue) to proceed";
                            //        objGetSNHierarchyResponse.Association[s].SNumList = null;
                            //        break;
                            //    }


                            //    if (
                            //                        (
                            //                        (objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["ALL"]) ||
                            //                        (objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["SN_HIERARCHY_AND_SW_VERSIONS"]) ||
                            //                        (objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["SN_HIERARCHY_ONLY"])
                            //                        ) &&
                            //                        (objParentChildAssociationResponse.ResponseStatus == 0) &&
                            //                        (!(objParentChildAssociationRequest.Filter.LookupFilter.FilterName == ConfigurationSettings.AppSettings["LOOK_UP"]))
                            //                        )
                            //    {
                            //        objParentChildAssociationResponse.Association[s].Status = (int)Constants.ResponseStatus.InvalidParameter;
                            //        objParentChildAssociationResponse.Association[s].Message = "Invalid FilterName. The valid Filter Name is LOOK_UP.";
                            //        objParentChildAssociationResponse.Association[s].SNumList = null;
                            //    }

                            //    else
                            //    {

                            //        if ((
                            //             (!(objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["ALL"])) &&
                            //              (!(objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["SN_HIERARCHY_AND_SW_VERSIONS"])) &&
                            //              (!(objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["SN_HIERARCHY_ONLY"]))
                            //              ) &&
                            //              (objParentChildAssociationResponse.ResponseStatus == 0) &&
                            //              (objParentChildAssociationRequest.Filter.LookupFilter.FilterName == ConfigurationSettings.AppSettings["LOOK_UP"])
                            //              )
                            //        {
                            //            objParentChildAssociationResponse.Association[s].Status = (int)Constants.ResponseStatus.InvalidParameter;
                            //            objParentChildAssociationResponse.Association[s].Message = "Invalid FilterValue. The valid Filter Values are SN_HIERARCHY_AND_SW_VERSIONS,SN_HIERARCHY_ONLY and ALL.";
                            //            objParentChildAssociationResponse.Association[s].SNumList = null;
                            //        }

                            //        else
                            //        {
                            //            if (
                            //        (
                            //        (!(objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["ALL"])) &&
                            //        (!(objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["SN_HIERARCHY_AND_SW_VERSIONS"])) &&
                            //        (!(objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["SN_HIERARCHY_ONLY"]))
                            //        ) &&
                            //        (objParentChildAssociationResponse.ResponseStatus == 0) &&
                            //        (!(objParentChildAssociationRequest.Filter.LookupFilter.FilterName == ConfigurationSettings.AppSettings["LOOK_UP"]))
                            //        )
                            //            {
                            //                objParentChildAssociationResponse.Association[s].Status = (int)Constants.ResponseStatus.InvalidParameter;
                            //                objParentChildAssociationResponse.Association[s].Message = "Invalid/blank/null FilterName and FilterValue. The valid Filter Name is LOOK_UP and the valid Filter Values are SN_HIERARCHY_AND_SW_VERSIONS,SN_HIERARCHY_ONLY and ALL.";
                            //                objParentChildAssociationResponse.Association[s].SNumList = null;
                            //            }

                            //            else
                            //            {

                            //                //if ((objParentChildAssociationRequest.Filter != null) && (objParentChildAssociationRequest.Filter.LookupFilter != null)
                            //                //    && (objParentChildAssociationResponse.ResponseStatus == 0))
                            //                //{
                            //                if ((objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["SN_HIERARCHY_ONLY"])
                            //                    && (objParentChildAssociationResponse.ResponseStatus == 0)
                            //                    && objParentChildAssociationRequest.Filter.LookupFilter.FilterName == ConfigurationSettings.AppSettings["LOOK_UP"])
                            //                {
                            //                    for (int i = 0; i < objParentChildAssociationRequest.SNum.Length; i++)
                            //                    {
                            //                        SNumsAssociation list1 = objParentChildAssociationResponse.Association[i];
                            //                        SNums[] snumlist = list1.SNumList;
                            //                        SNums[] IsSNumList = snumlist.Where(o => o.IsLicensableSNum == true).ToArray<SNums>();
                            //                        if (IsSNumList.Length > 0)
                            //                        {
                            //                            list1.LicensableSNum = IsSNumList[0].SNum;
                            //                            list1.SNumList = null;
                            //                        }
                            //                        else
                            //                        {
                            //                            objParentChildAssociationResponse.Association[s].Status = (int)Constants.ResponseStatus.NoParentChildFound;
                            //                            objParentChildAssociationResponse.Association[s].Message = Constants.ResponseMessage[8].ToString();
                            //                            objParentChildAssociationResponse.Association[s].SNumList = null;
                            //                        }

                            //                    }
                            //                    break;
                            //                }
                            //                else
                            //                {
                            //                    if ((objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["SN_HIERARCHY_AND_SW_VERSIONS"])
                            //                        && (objParentChildAssociationResponse.ResponseStatus == 0)
                            //                    && objParentChildAssociationRequest.Filter.LookupFilter.FilterName == ConfigurationSettings.AppSettings["LOOK_UP"])
                            //                    {
                            //                        for (int i = 0; i < objParentChildAssociationRequest.SNum.Length; i++)
                            //                        {

                            //                            SNumsAssociation list1 = objParentChildAssociationResponse.Association[i];
                            //                            SNums[] snumlist = list1.SNumList;
                            //                            SNums[] IsSNumList = snumlist.Where(o => o.IsLicensableSNum == true).ToArray<SNums>();
                            //                            if (IsSNumList.Length > 0)
                            //                            {
                            //                                list1.LicensableSNum = IsSNumList[0].SNum;
                            //                                SKUDetailInfo[] inputswsku = IsSNumList[0].SKU.ToArray<SKUDetailInfo>();
                            //                                var swsku1 = inputswsku.Where(o => o.SKUType == "SW");
                            //                                IsSNumList[0].SKU = swsku1.ToArray();
                            //                                list1.SNumList = IsSNumList;
                            //                            }
                            //                            else
                            //                            {
                            //                                objParentChildAssociationResponse.Association[s].Status = (int)Constants.ResponseStatus.NoParentChildFound;
                            //                                objParentChildAssociationResponse.Association[s].Message = Constants.ResponseMessage[8].ToString();
                            //                                objParentChildAssociationResponse.Association[s].SNumList = null;
                            //                            }
                            //                        }
                            //                        break;

                            //                    }

                            //                    else
                            //                    {
                            //                        if ((objParentChildAssociationRequest.Filter.LookupFilter.FilterValue == ConfigurationSettings.AppSettings["ALL"]) && (objParentChildAssociationResponse.ResponseStatus == 0)
                            //                    && objParentChildAssociationRequest.Filter.LookupFilter.FilterName == ConfigurationSettings.AppSettings["LOOK_UP"])
                            //                        {
                            //                            for (int i = 0; i < objParentChildAssociationRequest.SNum.Length; i++)
                            //                            {

                            //                                SNumsAssociation list1 = objParentChildAssociationResponse.Association[i];
                            //                                SNums[] snumlist = list1.SNumList;
                            //                                SNums[] IsSNumList = snumlist.Where(o => o.IsLicensableSNum == true).ToArray<SNums>();
                            //                                if (IsSNumList.Length > 0)
                            //                                {
                            //                                    list1.LicensableSNum = IsSNumList[0].SNum;
                            //                                    list1.SNumList = IsSNumList;
                            //                                }
                            //                                else
                            //                                {
                            //                                    objParentChildAssociationResponse.Association[s].Status = (int)Constants.ResponseStatus.NoParentChildFound;
                            //                                    objParentChildAssociationResponse.Association[s].Message = Constants.ResponseMessage[8].ToString();
                            //                                    objParentChildAssociationResponse.Association[s].SNumList = null;
                            //                                }
                            //                            }
                            //                            break;
                            //                        }
                            //                    }
                            //                }
                            //                //}
                            //            }
                            //        }
                            //    }
                            //}

                            //else
                            //{
                            //fix for defect 2904 - add null check
                            if (objGetSNHierarchyResponse.Association != null)
                            {
                                if ((objGetSNHierarchyResponse.Association[0].SNumList.Length <= 0))
                                {
                                    objGetSNHierarchyResponse.Association[s].Status   = (int)Constants.ResponseStatus.NoParentChildFound;
                                    objGetSNHierarchyResponse.Association[s].Message  = Constants.ResponseMessage[8].ToString();
                                    objGetSNHierarchyResponse.Association[s].SNumList = null;
                                }
                            }
                            //}
                        }
                    }
                }

                //SERIALIZE REQUEST/RESPONSE
                string request  = "GetParentChildAssociationRequest";
                string response = "GetParentChildAssociationResponse";

                try
                {
                    request  = Util.SerializeObject(objGetSNHierarchyRequest);
                    response = Util.SerializeObject(objGetSNHierarchyResponse);
                }
                catch (Exception ex)
                {
                    objEventLogger.WriteEntry("Request/Response Object Serialization Error: " + ex.Message + Environment.NewLine + ex.StackTrace);
                }

                if (!request.IsValidString())
                {
                    request = "GetParentChildAssociationRequest";
                }
                if (!response.IsValidString())
                {
                    response = "GetParentChildAssociationResponse";
                }


                //LOG REQUEST/RESPONSE
                objTransactionLogger.LogTransaction(objGetSNHierarchyRequest.RequestID, objGetSNHierarchyRequest.RequestDateTime, objGetSNHierarchyRequest.RequestingSystem,
                                                    request, objGetSNHierarchyResponse.ResponseID, objGetSNHierarchyResponse.ResponseDateTime, response,
                                                    objGetSNHierarchyResponse.ResponseStatus, objGetSNHierarchyResponse.ResponseMessage, 0);

                //EVENT LOG ENTRY
                objEventLogger.WriteEntry("End Processing GetParentChildAssociation");
            }
            return(objGetSNHierarchyResponse);
        }
Example #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="objLicenseRequest"></param>
        /// <returns></returns>
        public RMASwapResponse RMASwap(RMASwapRequest objRMASwapRequest)
        {
            var objRMASwapResponse = new RMASwapResponse();

            #region DUMMY RESPONSE

            /*
             * objRMASwapResponse.RequestID = objRMASwapRequest.RequestID;
             * objRMASwapResponse.ResponseID = objRMASwapRequest.RequestID;
             * objRMASwapResponse.ResponseDateTime = DateTime.UtcNow;
             * objRMASwapResponse.ResponseStatus = (int)Constants.ResponseStatus.Success;
             * objRMASwapResponse.ResponseMessage = Constants.ResponseStatus.Success.ToString();
             *
             #region Creating Dummy Response
             *
             * LicenseInfo[] licenseList = new LicenseInfo[2];
             *
             * for (int i = 0; i < licenseList.Length; i++)
             * {
             * licenseList[i] = new LicenseInfo();
             * licenseList[i].ImageUrl = "https://cisco.com/downloads";
             * licenseList[i].IsShippedVersion = (i == 0) ? true : false; ;
             * licenseList[i].Qty = i + 1;
             * licenseList[i].ReleaseDate = DateTime.Now.AddDays(-2).ToUniversalTime();
             * licenseList[i].SKUType = "SOFTWARE";
             * licenseList[i].Version = "LatestMajorRelease";
             * licenseList[i].VersionSeqNo = 0;
             * licenseList[i].VersionType = "DOT MAJOR";
             * licenseList[i].SKUID = "11233" + i.ToString();
             *
             * }
             *
             * objRMASwapResponse.Licenses = licenseList;
             #endregion
             *
             */
            #endregion

            //Start RMASwap

            try
            {
                //ASSIGNING ID'S
                objRMASwapResponse.RequestID  = objRMASwapRequest.RequestID;
                objRMASwapResponse.ResponseID = objRMASwapRequest.RequestID;

                //INPUT DATA VALIDATION
                if (objRMASwapBL.ValidateRequest(objRMASwapRequest, objRMASwapResponse))
                {
                    //PROCESS DATA & RETURN RESPONSE
                    objRMASwapBL.ProcessRequest(objRMASwapRequest, objRMASwapResponse);
                }
            }
            catch (Exception ex)
            {
                //SET FAILURE STATUS
                objRMASwapResponse.ResponseStatus  = (int)Constants.ResponseStatus.ServiceUnavailable;
                objRMASwapResponse.ResponseMessage = Constants.ResponseMessage[1000].ToString();

                //LOG EXCEPTION
                objEventLogger.WriteLog(ex.Message + Environment.NewLine + ex.StackTrace, objRMASwapRequest.RequestingSystem, DateTime.UtcNow, objRMASwapRequest.RequestID);
            }
            finally
            {
                objRMASwapResponse.ResponseDateTime = DateTime.UtcNow;


                //SERIALIZE REQUEST/RESPONSE
                string request  = "RMASwapRequest";
                string response = "RMASwapResponse";

                try
                {
                    request  = Util.SerializeObject(objRMASwapRequest);
                    response = Util.SerializeObject(objRMASwapResponse);
                }
                catch (Exception ex)
                {
                    objEventLogger.WriteLog("Request/Response Object Serialization Error: " + ex.Message + Environment.NewLine + ex.StackTrace, objRMASwapRequest.RequestingSystem, DateTime.UtcNow, objRMASwapRequest.RequestID);
                }

                if (!request.IsValidString())
                {
                    request = "RMASwapRequest";
                }
                if (!response.IsValidString())
                {
                    response = "RMASwapResponse";
                }


                //LOG REQUEST/RESPONSE
                objTransactionLogger.LogTransaction(objRMASwapRequest.RequestID, objRMASwapRequest.RequestDateTime, objRMASwapRequest.RequestingSystem,
                                                    request, objRMASwapResponse.ResponseID, objRMASwapResponse.ResponseDateTime, response,
                                                    objRMASwapResponse.ResponseStatus, objRMASwapResponse.ResponseMessage, 0);

                //End Processing RMASwap
            }

            //RMASwap ends


            return(objRMASwapResponse);
        }
Example #4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="objSetSoftwareMetadataRequest"></param>
        /// <returns></returns>
        public SetSKUMetadataResponse SetSKUMetadata(SetSKUMetadataRequest objSetSKUMetadataRequest)
        {
            var objSetSKUMetadataResponse = new SetSKUMetadataResponse();

            objSetSKUMetadataResponse.RequestID        = objSetSKUMetadataRequest.RequestID;
            objSetSKUMetadataResponse.ResponseID       = objSetSKUMetadataRequest.RequestID;
            objSetSKUMetadataResponse.ResponseDateTime = DateTime.UtcNow;
            objSetSKUMetadataResponse.ResponseStatus   = (int)Constants.ResponseStatus.NotImplemented;
            objSetSKUMetadataResponse.ResponseMessage  = Constants.ResponseStatus.NotImplemented.ToString();

            try
            {
                //ASSIGNING ID'S
                objSetSKUMetadataResponse.RequestID  = objSetSKUMetadataRequest.RequestID;
                objSetSKUMetadataResponse.ResponseID = objSetSKUMetadataRequest.RequestID;

                //INPUT DATA VALIDATION

                if (objSetSKUMetadataBL.ValidateRequest(objSetSKUMetadataRequest, objSetSKUMetadataResponse))
                {
                    //PROCESS DATA & RETURN RESPONSE
                    objSetSKUMetadataBL.ProcessRequest(objSetSKUMetadataRequest, objSetSKUMetadataResponse);
                }
            }
            catch (Exception ex)
            {
                //SET FAILURE STATUS

                objSetSKUMetadataResponse.ResponseStatus  = (int)Constants.ResponseStatus.ServiceUnavailable;
                objSetSKUMetadataResponse.ResponseMessage = Constants.ResponseMessage[1000].ToString();

                //LOG EXCEPTION
                objEventLogger.WriteLog(ex.Message + Environment.NewLine + ex.StackTrace, objSetSKUMetadataRequest.RequestingSystem, DateTime.UtcNow, objSetSKUMetadataRequest.RequestID);
            }
            finally
            {
                objSetSKUMetadataResponse.ResponseDateTime = DateTime.UtcNow;


                //SERIALIZE REQUEST/RESPONSE
                string request  = "SetSKUMetadataRequest";
                string response = "SetSKUMetadataResponse";

                try
                {
                    request  = Util.SerializeObject(objSetSKUMetadataRequest);
                    response = Util.SerializeObject(objSetSKUMetadataResponse);
                }
                catch (Exception ex)
                {
                    objEventLogger.WriteLog("Request/Response Object Serialization Error: " + ex.Message + Environment.NewLine + ex.StackTrace, objSetSKUMetadataRequest.RequestingSystem, DateTime.UtcNow, objSetSKUMetadataRequest.RequestID);
                }

                if (!request.IsValidString())
                {
                    request = "SetSKUMetadataRequest";
                }
                if (!response.IsValidString())
                {
                    response = "SetSKUMetadataResponse";
                }


                //LOG REQUEST/RESPONSE
                objTransactionLogger.LogTransaction(objSetSKUMetadataRequest.RequestID, objSetSKUMetadataRequest.RequestDateTime, objSetSKUMetadataRequest.RequestingSystem,
                                                    request, objSetSKUMetadataResponse.ResponseID, objSetSKUMetadataResponse.ResponseDateTime, response,
                                                    objSetSKUMetadataResponse.ResponseStatus, objSetSKUMetadataResponse.ResponseMessage, 0);

                //End Processing SetSKUMetadata
            }

            //SetSKUMetadata ends
            return(objSetSKUMetadataResponse);


            //return resp;
        }
Example #5
0
        public DFLicenseResponse GetLicense(DFLicenseRequest objDFLicenseRequest)
        {
            var objDFLicenseResponse = new DFLicenseResponse();
            var objLicRequest        = new LicRequest();
            var objLicResponse       = new LicResponse();
            var objCAProxy           = new SigServTandbergService();

            //Start GetLicense;
            objEventLogger.WriteEntry("Start GetLicense");

            if (objDFLicenseRequest != null)
            {
                try
                {
                    //ASSIGNING ID'S
                    objDFLicenseResponse.RequestID  = objDFLicenseRequest.RequestID;
                    objDFLicenseResponse.ResponseID = objDFLicenseRequest.RequestID;

                    //Input Validation GetLicenses
                    if (objBL.ValidateRequest(objDFLicenseRequest, objDFLicenseResponse))
                    {
                        objBL.GetLicense(objDFLicenseRequest, objDFLicenseResponse);
                    }
                }
                catch (Exception ex)
                {
                    //Message for alg 17

                    if (ex.Message.EndsWith("alg 17 SKU") || ex.Message.EndsWith("alg 20 SKU") || ex.Message.EndsWith("Please enter valid no of years"))
                    {
                        //SET FAILURE STATUS
                        objDFLicenseResponse.ResponseStatus  = (int)Constants.ResponseStatus.InvalidParameter;
                        objDFLicenseResponse.ResponseMessage = ex.Message;
                        objDFLicenseResponse.LicenseKey      = "";
                    }
                    else
                    {
                        //SET FAILURE STATUS
                        objDFLicenseResponse.ResponseStatus  = (int)Constants.ResponseStatus.ServiceUnavailable;
                        objDFLicenseResponse.ResponseMessage = Constants.ResponseMessage[1000].ToString();
                        objDFLicenseResponse.LicenseKey      = "";
                    }

                    //LOG EXCEPTION
                    objEventLogger.WriteLog("GetLicense:" + ex.Message + Environment.NewLine + ex.StackTrace, objDFLicenseRequest.RequestingSystem, DateTime.UtcNow, objDFLicenseRequest.RequestID);
                }
                finally
                {
                    objDFLicenseResponse.ResponseDateTime = DateTime.UtcNow;

                    //SERIALIZE REQUEST/RESPONSE
                    string request  = "GetLicenseRequest";
                    string response = "GetLicenseResponse";

                    try
                    {
                        request  = Util.SerializeObject(objDFLicenseRequest);
                        response = Util.SerializeObject(objDFLicenseResponse);
                    }
                    catch (Exception ex)
                    {
                        objEventLogger.WriteLog("GetLicense:Request/Response Object Serialization Error: " + ex.Message + Environment.NewLine + ex.StackTrace, objDFLicenseRequest.RequestingSystem, DateTime.UtcNow, objDFLicenseRequest.RequestID);
                    }

                    if (!request.IsValidString())
                    {
                        request = "GetLicenseRequest";
                    }
                    if (!response.IsValidString())
                    {
                        response = "GetLicenseResponse";
                    }


                    //LOG REQUEST/RESPONSE
                    objTransactionLogger.LogTransaction(objDFLicenseRequest.RequestID, objDFLicenseRequest.RequestDateTime, objDFLicenseRequest.RequestingSystem,
                                                        request, objDFLicenseResponse.ResponseID, objDFLicenseResponse.ResponseDateTime, response,
                                                        objDFLicenseResponse.ResponseStatus, objDFLicenseResponse.ResponseMessage, 0);

                    //End Processing GetLicense
                }
            }

            return(objDFLicenseResponse);
        }
Example #6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="objDFLicenseRequest"></param>
        /// <returns></returns>
        private DFLicenseResponse GenerateNewLicense(DFLicenseRequest objDFLicenseRequest, int ShippedVersion, out int HistoricQty)
        {
            DFLicenseResponse objDFLicenseResponse = new DFLicenseResponse();

            objDFLicenseResponse.RequestID      = objDFLicenseRequest.RequestID;
            objDFLicenseResponse.ResponseID     = objDFLicenseRequest.RequestID;
            objDFLicenseResponse.ResponseStatus = (int)Constants.ResponseStatus.Success;
            objBL       = new LicenseBL();
            HistoricQty = 0;
            bool flag = ShippedVersion == 0 ? false : true;

            try
            {
                objBL.GetLicense(objDFLicenseRequest, objDFLicenseResponse, false, flag);
                HistoricQty = objBL.HistoricQty;
            }
            catch (Exception ex)
            {
                //SET FAILURE STATUS
                objDFLicenseResponse.ResponseStatus  = (int)Constants.ResponseStatus.ServiceUnavailable;
                objDFLicenseResponse.ResponseMessage = Constants.ResponseMessage[1000].ToString();
                objDFLicenseResponse.LicenseKey      = "";

                //LOG EXCEPTION
                objEventLogger.WriteLog("GetLicense:" + ex.Message + Environment.NewLine + ex.StackTrace, objDFLicenseRequest.RequestingSystem, DateTime.UtcNow, objDFLicenseRequest.RequestID);
            }
            finally
            {
                objDFLicenseResponse.ResponseDateTime = DateTime.UtcNow;

                //SERIALIZE REQUEST/RESPONSE
                string request  = "GetLicenseRequest";
                string response = "GetLicenseResponse";

                try
                {
                    request  = Util.SerializeObject(objDFLicenseRequest);
                    response = Util.SerializeObject(objDFLicenseResponse);
                }
                catch (Exception ex)
                {
                    objEventLogger.WriteLog("GetLicense:Request/Response Object Serialization Error: " + ex.Message + Environment.NewLine + ex.StackTrace, objDFLicenseRequest.RequestingSystem, DateTime.UtcNow, objDFLicenseRequest.RequestID);
                }

                if (!request.IsValidString())
                {
                    request = "GetLicenseRequest";
                }
                if (!response.IsValidString())
                {
                    response = "GetLicenseResponse";
                }


                //LOG REQUEST/RESPONSE
                objTransactionLogger.LogTransaction(objDFLicenseRequest.RequestID, objDFLicenseRequest.RequestDateTime, objDFLicenseRequest.RequestingSystem,
                                                    request, objDFLicenseResponse.ResponseID, objDFLicenseResponse.ResponseDateTime, response,
                                                    objDFLicenseResponse.ResponseStatus, objDFLicenseResponse.ResponseMessage, 0);

                //End Processing GetLicense
            }
            return(objDFLicenseResponse);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="objLicenseRequest"></param>
        /// <returns></returns>
        public LicenseResponse GetLicenses(LicenseRequest objLicenseRequest)
        {
            var objLicenseResponse = new LicenseResponse();

            //Start GetLicenses;
            if (objLicenseRequest != null)
            {
                #region DUMMY RESPONSE

                /*
                 * objLicenseResponse.RequestID = objLicenseRequest.RequestID;
                 * objLicenseResponse.ResponseID = objLicenseRequest.RequestID;
                 * objLicenseResponse.ResponseDateTime = DateTime.UtcNow;
                 * objLicenseResponse.ResponseStatus = (int)Constants.ResponseStatus.Success;
                 * objLicenseResponse.ResponseMessage = Constants.ResponseStatus.Success.ToString();
                 *
                 #region Creating Dummy Response
                 * if (objLicenseRequest.UnitInfo.Length > 0)
                 * {
                 *  UnitLicenseInfo[] UnitLicenseInfoList = new UnitLicenseInfo[objLicenseRequest.UnitInfo.Length];
                 *  for (int i = 0; i < UnitLicenseInfoList.Length; i++)
                 *  {
                 *      UnitLicenseInfoList[i] = new UnitLicenseInfo();
                 *      UnitLicenseInfoList[i].SNum = objLicenseRequest.UnitInfo[i].SNum;
                 *      UnitLicenseInfoList[i].LicensableSNum = "AAAA-BBBB-CCCC-DDDD-EEEE" + i.ToString();
                 *
                 *      SKUDetailInfo[] SKUInfoList = new SKUDetailInfo[req.UnitInfo[i].SKU.Length];
                 *      for (int j = 0; j < SKUInfoList.Length; j++)
                 *      {
                 *          SKUInfoList[j] = new SKUDetailInfo();
                 *          SKUInfoList[j].SKUID = objLicenseRequest.UnitInfo[i].SKU[j].SKUID;
                 *          SKUInfoList[j].SKUName = "Memory Card";
                 *          SKUInfoList[j].TAAPartNo = "TAA" + SKUInfoList[j].SKUID;
                 *          SKUInfoList[j].TAAPartName = "TAANO" + SKUInfoList[j].SKUID;
                 *          SKUInfoList[j].Qty = 1;
                 *          SKUInfoList[j].OptionLicenseKey = "";
                 *          SKUInfoList[j].SKUType = "SW";
                 *
                 *          VersionInfoWithLicense[] VersionInfoWithLicenseList = new VersionInfoWithLicense[2];
                 *          for (int k = 0; k < VersionInfoWithLicenseList.Length; k++)
                 *          {
                 *
                 *              VersionInfoWithLicenseList[k] = new VersionInfoWithLicense();
                 *              VersionInfoWithLicenseList[k].VersionPartName = "sdfasf";
                 *              VersionInfoWithLicenseList[k].VersionPartNo = "123";
                 *              VersionInfoWithLicenseList[k].ImageUrl = "https://cisco.com/downloads";
                 *              VersionInfoWithLicenseList[k].IsShippedVersion = (k == 0) ? true : false;
                 *              VersionInfoWithLicenseList[k].LicenseKey = "AAAA-BBBB-CCCC-DDDD-EEEE" + k.ToString();
                 *              VersionInfoWithLicenseList[k].ReleaseDate = DateTime.Now.AddDays(-5).ToUniversalTime();
                 *              VersionInfoWithLicenseList[k].Version = "LatestMajorRelease";
                 *              VersionInfoWithLicenseList[k].VersionSeqNo = k + 1;
                 *              VersionInfoWithLicenseList[k].VersionType = "DOT MAJOR";
                 *
                 *          }
                 *          SKUInfoList[j].VersionList = VersionInfoWithLicenseList;
                 *
                 *      }
                 *      UnitLicenseInfoList[i].SKU = SKUInfoList;
                 *  }
                 *
                 *
                 *  objLicenseResponse.UnitLicenseInfo = UnitLicenseInfoList;
                 *
                 * }
                 * else
                 * {
                 *  objLicenseResponse.ResponseStatus = (int)Constants.ResponseStatus.InvalidParameter;
                 *  objLicenseResponse.ResponseMessage = Constants.ResponseStatus.InvalidParameter.ToString();
                 * }
                 #endregion
                 */
                #endregion

                try
                {
                    //ASSIGNING ID'S
                    objLicenseResponse.RequestID  = objLicenseRequest.RequestID;
                    objLicenseResponse.ResponseID = objLicenseRequest.RequestID;

                    //Input Validation GetLicenses
                    if (objLicensesBL.ValidateRequest(objLicenseRequest, objLicenseResponse))
                    {
                        //PROCESS DATA & RETURN RESPONSE
                        objLicensesBL.ProcessRequest(objLicenseRequest, objLicenseResponse);
                    }
                }
                catch (Exception ex)
                {
                    //SET FAILURE STATUS
                    objLicenseResponse.ResponseStatus  = (int)Constants.ResponseStatus.ServiceUnavailable;
                    objLicenseResponse.ResponseMessage = Constants.ResponseMessage[1000].ToString();

                    //LOG EXCEPTION
                    objEventLogger.WriteLog("GetLicenses:" + ex.Message + Environment.NewLine + ex.StackTrace, objLicenseRequest.RequestingSystem, DateTime.UtcNow, objLicenseRequest.RequestID);
                }
                finally
                {
                    objLicenseResponse.ResponseDateTime = DateTime.UtcNow;


                    //SERIALIZE REQUEST/RESPONSE
                    string request  = "GetLicensesRequest";
                    string response = "GetLicensesResponse";

                    try
                    {
                        request  = Util.SerializeObject(objLicenseRequest);
                        response = Util.SerializeObject(objLicenseResponse);
                    }
                    catch (Exception ex)
                    {
                        objEventLogger.WriteLog("GetLicenses:Request/Response Object Serialization Error: " + ex.Message + Environment.NewLine + ex.StackTrace, objLicenseRequest.RequestingSystem, DateTime.UtcNow, objLicenseRequest.RequestID);
                    }

                    if (!request.IsValidString())
                    {
                        request = "GetLicensesRequest";
                    }
                    if (!response.IsValidString())
                    {
                        response = "GetLicensesResponse";
                    }


                    //LOG REQUEST/RESPONSE
                    objTransactionLogger.LogTransaction(objLicenseRequest.RequestID, objLicenseRequest.RequestDateTime, objLicenseRequest.RequestingSystem,
                                                        request, objLicenseResponse.ResponseID, objLicenseResponse.ResponseDateTime, response,
                                                        objLicenseResponse.ResponseStatus, objLicenseResponse.ResponseMessage, 0);

                    //End Processing GetLicenses
                }
            }
            //GetLicenses ends
            return(objLicenseResponse);
        }