Exemplo n.º 1
0
        public string DeleteCatalogItemDefinition(string propertyGuid, string catalogItemGUID)
        {
            try
            {
                idCatalogItemDefinition currentIdCatalogItemDefinition = db.idCatalogItemDefinition.Single(x => x.GUID == propertyGuid && x.CatalogItemGUID == catalogItemGUID);
                idCatalogItem           currentIdCatalogItem           = db.idCatalogItem.Single(x => x.GUID == catalogItemGUID);
                idImageVersion          currentIdImageVersion          = db.idImageVersion.SingleOrDefault(x => x.MainImageGUID == catalogItemGUID);

                db.idCatalogItemDefinition.Remove(currentIdCatalogItemDefinition);

                currentIdCatalogItem.idInSync = currentIdCatalogItem.idInSync >> 2;
                if (currentIdImageVersion != null)
                {
                    currentIdImageVersion.idInSync = currentIdImageVersion.idInSync >> 2;
                }

                db.SaveChanges();

                log.Info(String.Format("Client {0}:{1} called DeleteCatalogItemDefinition with propertyGuid: {2} and catalogItemGUID {3}",
                                       clientEndpoint.Address, clientEndpoint.Port, propertyGuid, catalogItemGUID));
                return("OK");
            }
            catch (Exception ex)
            {
                log.Error(ex.ToString());
                throw ex;
            }
        }
Exemplo n.º 2
0
        public string AddCatalogItemDefinition(string propertyGuid, string catalogItemGUID)
        {
            try
            {
                var query = from tbl in db.idCatalogItemDefinition
                            where tbl.GUID == propertyGuid & tbl.CatalogItemGUID == catalogItemGUID
                            select tbl;

                if (query.Count() > 0)
                {
                    throw new Exception("CatalogItemDefinition already exists");
                }

                idCatalogItem  currentIdCatalogItem  = db.idCatalogItem.Single(x => x.GUID == catalogItemGUID);
                idImageVersion currentIdImageVersion = db.idImageVersion.SingleOrDefault(x => x.MainImageGUID == catalogItemGUID);

                idCatalogItemDefinition newIdCatalogItemDefinition = new idCatalogItemDefinition();
                newIdCatalogItemDefinition.GUID            = propertyGuid;
                newIdCatalogItemDefinition.CatalogItemGUID = catalogItemGUID;
                newIdCatalogItemDefinition.idAssigned      = DateTime.Now;
                db.idCatalogItemDefinition.Add(newIdCatalogItemDefinition);

                currentIdCatalogItem.idInSync = currentIdCatalogItem.idInSync >> 2;
                if (currentIdImageVersion != null)
                {
                    currentIdImageVersion.idInSync = currentIdImageVersion.idInSync >> 2;
                }

                db.SaveChanges();

                log.Info(String.Format("Client {0}:{1} called AddCatalogItemDefinition with propertyGuid: {2} and catalogItemGUID {3}",
                                       clientEndpoint.Address, clientEndpoint.Port, propertyGuid, catalogItemGUID));
                return("OK");
            }
            catch (Exception ex)
            {
                log.Error(ex.ToString());
                throw ex;
            }
        }