Example #1
0
        static void Main(string[] args)
        {
            //int siteId = 1210; //Cinemark
            int siteId = 473; //Regal
            //int siteId = 271; //AMC

            //string connectionString = @"Data Source=DCADB05\EI;Initial Catalog=AMS;Integrated Security=True";
            string connectionString = "Data Source=SEMBERLEY;Initial Catalog=AMS.TSTDB01;Persist Security Info=True;User ID=sa;Password=Iw2wfm2d";

            //string connectionString = "Data Source=SEMBERLEY;Initial Catalog=AMS.12.23.2009;Data Source=SEMBERLEY;Initial Catalog=AMS.2009.12.23;Persist Security Info=True;User ID=sa;Password="******"Data Source=WEBSERVER;Initial Catalog=AMS.2009.12.23;Integrated Security=True";

            #region Pull the certificate from the store
            X509Certificate2 x509Certificate2 = null;
            try
            {
                x509Certificate2 = GetCertificate("0EFB7EEBDCDA4F64A718DB3FF908B085", StoreLocation.CurrentUser); // *.dcipllc.com
            }
            catch (Exception e)
            {
                Exception throwableException = new Exception("Failed to get certificate, see inner exception for details", e);
                throw throwableException;
            }
            if (null == x509Certificate2)
            {
                Exception throwableException = new Exception("Failed to get certificate");
                throw throwableException;
            }
            #endregion

            try
            {
                XmlDocument xmlDocument = FacilityListMessageUtilities.FLM_Create(siteId, x509Certificate2, connectionString);
                xmlDocument.Save(@"\_Testing Output\DCIP.FLM.ConsoleTestApplication\FLM_DCinemaSecurityMessage.xml");
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }

            try
            {
                XmlDocument xmlDocumentExtended = FacilityListMessageUtilities.FLMEXT_Create(siteId, x509Certificate2, connectionString);
                xmlDocumentExtended.Save(@"\_Testing Output\DCIP.FLM.ConsoleTestApplication\FLMEXT_DCinemaSecurityMessage.xml");
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
        public DCinemaSecurityMessageType GetFLM(string parameters)
        {
            DCinemaSecurityMessageType dCinemaSecurityMessage = null;

            string[] paramList = parameters.Split(':');
            if (paramList[0].ToUpper().CompareTo("URN") != 0)
            {
                throw new NotSupportedException(String.Format("'{0}' is not a valid parameter.", parameters));
            }

            if (paramList[1].ToUpper().CompareTo("PUBLICID") != 0)
            {
                throw new NotSupportedException(String.Format("'{0}' is not a valid parameter.", parameters));
            }

            if (paramList[2].ToUpper().CompareTo("FACILITY") != 0)
            {
                throw new NotSupportedException(String.Format("'{0}' is not a valid parameter.", parameters));
            }

            string exhibitorURI = paramList[3];

            int  siteCode    = 0;
            bool isValidSite = int.TryParse(paramList[4], out siteCode);

            if (!isValidSite)
            {
                throw new InvalidCastException("Invalid site code provided.");
            }

            string certificateSerialNumber = "0EFB7EEBDCDA4F64A718DB3FF908B085";

            SiteDataContext siteData  = new SiteDataContext();
            var             siteQuery =
                from site in siteData.Sites
                where ((site.Site_Code == siteCode) && (site.Exhibitor.URI_Mapping.ToUpper().CompareTo(exhibitorURI.ToUpper()) == 0))
                select site;

            if (siteQuery.Count() < 1)
            {
                throw new NotSupportedException("Site not found.");
            }

            dCinemaSecurityMessage = FacilityListMessageUtilities.FLM_Create(siteQuery.First().Site_Id, certificateSerialNumber, StoreLocation.CurrentUser, siteData.Connection.ConnectionString);
            return(dCinemaSecurityMessage);
        }