public void Properties_NotEquality() { try { DataElement[] dataElementArray = new DataElement[8]; dataElementArray[0] = new DataElement(EntryDataType.Password); dataElementArray[1] = dataElementArray[0].Clone(); dataElementArray[1].StaticData = EntryDataType.Notes; dataElementArray[2] = new DataElement(new StrengthReport.Measuring.BasicStrengthMeasure()); dataElementArray[3] = dataElementArray[2].Clone(); dataElementArray[3].FunctionType = (new StrengthReport.Measuring.AdvancedStrengthMeasure()).GetType().FullName; dataElementArray[4] = new DataElement(EntryDataType.Empty); dataElementArray[5] = dataElementArray[4].Clone(); dataElementArray[5].FunctionType = (new StrengthReport.Measuring.BasicStrengthMeasure()).GetType().FullName; dataElementArray[6] = new DataElement(new StrengthReport.Measuring.BasicStrengthMeasure()); dataElementArray[7] = dataElementArray[6].Clone(); dataElementArray[7].StaticData = EntryDataType.Empty; Assert.NotEquals(dataElementArray[0], dataElementArray[1]); Assert.NotEquals(dataElementArray[2], dataElementArray[3]); Assert.NotEquals(dataElementArray[4], dataElementArray[5]); Assert.NotEquals(dataElementArray[6], dataElementArray[7]); } catch (Exception e) { Assert.Fail("Exception: " + e.Message + "\n" + e.StackTrace); } }
public static void ShouldBeAbleToCheckTheEqualityBetweenTheSameDataElement() { //Arrange var DataElement = new DataElement("test"); //Act //Assert Assert.Equal(DataElement, DataElement); }
public static void ShouldBeABleToCreateANewDataElementWithDefaultProperties() { //Arrange var dataElement = new DataElement("test"); //Act //Assert Assert.Equal("test", dataElement.Name); }
public static void ShouldBeABleToTellIfADataElementIsAValidDataElementModel() { //Arrange var dataElement = new DataElement("test"); //Act //Assert Assert.IsAssignableFrom<Model.DataElement>(dataElement); }
public static void ShouldBeAbleToTellTwoDifferentDataElements() { //Arrange var DataElement1 = new DataElement("test"); var DataElement2 = new DataElement("test1"); //Act //Assert Assert.NotEqual(DataElement1, DataElement2); }
public static void ShouldBeAbleToCheckIfTwoDataElementsWithTheSameValuesAreEqual() { //Arrange var DataElement1 = new DataElement("test"); var DataElement2 = new DataElement("test"); //Act //Assert Assert.Equal(DataElement1, DataElement2); }
public static void ShouldBeAbleToDeserializeFromJsonANewDataElementDocumentWithDefaultProperties() { //Arrange var expectedAnswer = new DataElement("test"); var serializedDataElement = "{\"name\" : \"test\"}"; //Act var realAnswer = JsonConvert.DeserializeObject<DataElement>(serializedDataElement, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore }); //Assert Assert.Equal(expectedAnswer, realAnswer); }
public IList GetList () { ArrayList result = new ArrayList(); for (int i = 0; i < 10; i++) { DataElement element = new DataElement(); element.Name = "Name " + i.ToString(); element.Val = i; result.Add(element); } return result; }
public void TestClone_TranslatableDisplayName() { IPolicyObjectCollection<IDataItem> collection = new PolicyObjectCollection<IDataItem>(); DataElement dataElement = new DataElement(Guid.NewGuid(), new NonTranslateableLanguageItem("content"), new TranslateableLanguageItem("Word or phrase"), DataType.StringArray, collection); DataElement dataElementCopy = dataElement.Clone() as DataElement; Assert.AreEqual(dataElement.Name.Identifier, dataElementCopy.Name.Identifier); Assert.AreEqual(dataElement.Name.Value, dataElementCopy.Name.Value); Assert.AreNotEqual(dataElement.DisplayName.Identifier, dataElementCopy.DisplayName.Identifier); }
public void TestClone() { DataElement elem = new DataElement( new TranslateableLanguageItem(Guid.NewGuid()), new TranslateableLanguageItem(Guid.NewGuid()), DataType.String, DataItem.CreateDataItem(new TranslateableLanguageItem(Guid.NewGuid()), DataType.String, "it's a string, init") ); IDataElement copy = elem.Clone() as IDataElement; Assert.AreEqual(elem.DisplayName.Value, copy.DisplayName.Value); Assert.AreNotEqual(elem.Identifier, copy.Identifier); Assert.AreNotEqual(elem.Name.Identifier, copy.Name.Identifier); Assert.AreEqual(elem.Name.Value, copy.Name.Value); Assert.AreEqual(elem.ReadOnly, copy.ReadOnly); Assert.AreEqual(elem.Type, copy.Type); }
public void TestClone() { IDataElement elem = new DataElement(new TranslateableLanguageItem("1"), new TranslateableLanguageItem("1"), DataType.String, "name"); Parameter param = new Parameter( "param1", elem); IParameter copyOfParam = param.Clone() as IParameter; Assert.IsNotNull(copyOfParam); Assert.AreNotEqual(param.Identifier, copyOfParam.Identifier); Assert.AreEqual(param.ReadOnly, copyOfParam.ReadOnly); IDataElement copyOfElem = copyOfParam.Value; Assert.IsNotNull(copyOfElem); Assert.AreEqual(elem.Name.Value, copyOfElem.Name.Value); Assert.AreEqual(elem.DisplayName.Value, copyOfElem.DisplayName.Value); Assert.AreEqual(elem.Type, copyOfElem.Type); Assert.AreEqual("name", (string)copyOfElem.Data); }
public async Task <IActionResult> Delete(Guid instanceGuid, Guid dataId, int instanceOwnerPartyId) { _logger.LogInformation($"//DataController // Delete // Starting method"); string instanceId = $"{instanceOwnerPartyId}/{instanceGuid}"; // check if instance id exist and user is allowed to change the instance data Instance instance = await _instanceRepository.GetOne(instanceId, instanceOwnerPartyId); if (instance == null) { return(NotFound("Provided instanceId is unknown to storage service")); } DataElement dataElement = await _dataRepository.Read(instanceGuid, dataId); if (dataElement == null) { return(NotFound("Provided dataId is unknown to storage service")); } // delete blob stored file and data element object try { string storageFileName = DataElementHelper.DataFileName(instance.AppId, instanceGuid.ToString(), dataId.ToString()); bool result = await _dataRepository.DeleteDataInStorage(storageFileName); await _dataRepository.Delete(dataElement); await DispatchEvent(InstanceEventType.Deleted.ToString(), instance, dataElement); return(Ok(true)); } catch (Exception deleteException) { _logger.LogError($"Unable to delete data element {dataId} due to {deleteException}"); return(StatusCode(500, $"Unable to delete data element {dataId} due to {deleteException.Message}")); } }
private async Task <Instance> SaveDataElementsAndUpdateInstance(List <Part> parts, Instance storedInstance, DateTime creationTime, string userId) { try { foreach (Part part in parts) { // Create a new DataElement to be stored in blob and added in the Data List of the Instance object. DataElement newDataElement = DataElementHelper.CreateDataElement(part.Name, storedInstance, creationTime, part.ContentType, part.FileName, part.Stream.Length, userId); // Store file as blob. newDataElement.FileSize = _dataRepository.WriteDataToStorage(part.Stream, newDataElement.StorageUrl).Result; if (newDataElement.FileSize > 0) { storedInstance.Data.Add(newDataElement); logger.LogInformation($"Data element '{newDataElement.ElementType} - {newDataElement.Id}' is stored at {newDataElement.StorageUrl}, file size {newDataElement.FileSize / 1024}KB"); } } // Update instance with the data element. storedInstance = _instanceRepository.Update(storedInstance).Result; } catch (Exception dataElementException) { // compensating action - delete blobs logger.LogError($"Creation of data elements failed. {dataElementException}"); foreach (DataElement dataElement in storedInstance.Data) { await _dataRepository.DeleteDataInStorage(dataElement.StorageUrl); logger.LogError($"Deleted data element '{dataElement.ElementType} - {dataElement.Id}' stored at {dataElement.StorageUrl}"); } throw; } return(storedInstance); }
public async Task <DataElement> InsertBinaryData(string instanceId, string dataType, string contentType, string filename, Stream stream) { Application app = _applicationService.GetApplication(); Guid dataGuid = Guid.NewGuid(); string dataPath = GetDataPath(app.Org, app.Id.Split("/")[1], Convert.ToInt32(instanceId.Split("/")[0]), new Guid(instanceId.Split("/")[1])); DataElement dataElement = new DataElement() { Id = dataGuid.ToString(), DataType = dataType, ContentType = contentType, }; if (!Directory.Exists(Path.GetDirectoryName(dataPath))) { Directory.CreateDirectory(Path.GetDirectoryName(dataPath)); } Directory.CreateDirectory(dataPath + @"blob"); long filesize; using (Stream streamToWriteTo = File.Open(dataPath + @"blob\" + dataGuid.ToString(), FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite)) { await stream.CopyToAsync(streamToWriteTo); streamToWriteTo.Flush(); filesize = streamToWriteTo.Length; } dataElement.Size = filesize; string jsonData = JsonConvert.SerializeObject(dataElement); using StreamWriter sw = new StreamWriter(dataPath + dataGuid.ToString() + @".json"); sw.Write(jsonData.ToString()); sw.Close(); return(dataElement); }
public async Task <DataElement> InsertBinaryData(string org, string app, int instanceOwnerId, Guid instanceGuid, string dataType, HttpRequest request) { Guid dataGuid = Guid.NewGuid(); string dataPath = GetDataPath(org, app, instanceOwnerId, instanceGuid); Instance instance = GetTestInstance(app, org, instanceOwnerId, instanceGuid); DataElement dataElement = new DataElement() { Id = dataGuid.ToString(), DataType = dataType, ContentType = request.ContentType }; if (!Directory.Exists(Path.GetDirectoryName(dataPath))) { Directory.CreateDirectory(Path.GetDirectoryName(dataPath)); } Directory.CreateDirectory(dataPath + @"blob"); long filesize; using (Stream streamToWriteTo = File.Open(dataPath + @"blob\" + dataGuid.ToString(), FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite)) { await request.Body.CopyToAsync(streamToWriteTo); streamToWriteTo.Flush(); filesize = streamToWriteTo.Length; streamToWriteTo.Close(); } dataElement.Size = filesize; string jsonData = JsonConvert.SerializeObject(dataElement); using StreamWriter sw = new StreamWriter(dataPath + dataGuid.ToString() + @".json"); sw.Write(jsonData.ToString()); sw.Close(); return(dataElement); }
public void NormalizeSetsParentElementAndDataInColumns() { DataElement da = Helpers.CreateTestDataElement(); Assert.ReferenceEquals(da, da.Rows[0].ParentElement); Assert.ReferenceEquals(da, da.Rows[1].ParentElement); Assert.ReferenceEquals(da, da.Columns[0].ParentElement); Assert.ReferenceEquals(da, da.Columns[1].ParentElement); Assert.ReferenceEquals(da, da.Columns[2].ParentElement); Assert.AreEqual(1.0, da.Columns[0].Data[0]); Assert.AreEqual(5.05, da.Columns[0].Data[1]); Assert.AreEqual("client 1", da.Columns[1].Data[0]); Assert.AreEqual("client 2", da.Columns[1].Data[1]); Assert.AreEqual(false, da.Columns[2].Data[0]); Assert.AreEqual(true, da.Columns[2].Data[1]); Assert.AreEqual(da.Columns[0].Data[0], da.Rows[0].Data[0]); Assert.AreEqual(da.Columns[0].Data[1], da.Rows[1].Data[0]); Assert.AreEqual(da.Columns[1].Data[0], da.Rows[0].Data[1]); Assert.AreEqual(da.Columns[1].Data[1], da.Rows[1].Data[1]); Assert.AreEqual(da.Columns[2].Data[0], da.Rows[0].Data[2]); Assert.AreEqual(da.Columns[2].Data[1], da.Rows[1].Data[2]); }
//添加新模块了,保存主页个人模版 public static void UpdateAfterAddNewOneBlock(string userId, string blockId, string blockType, string templateId, string isManage) { WebPartTemplate dr = GetWebPartTemplateRecord(userId, blockType, templateId, isManage); //DbRecord dr = new DbRecord(daAccess,"DoorTemplate","UserId",userId,"IsDefault","T","BlockType",blockType); string tempXml = dr.TemplateXml; DataCollection list = new DataCollection(tempXml); WebPart bl = WebPart.Find(blockId); DataElement item = list.NewElement(); item.SetAttr("Id", bl.Id); item.SetAttr("BlockTitle", bl.BlockTitle); item.SetAttr("BlockKey", bl.BlockKey); item.SetAttr("BlockImage", bl.BlockImage); item.SetAttr("RepeatItemCount", bl.RepeatItemCount.Value.ToString()); item.SetAttr("RepeatItemLength", bl.RepeatItemLength.Value.ToString()); item.SetAttr("Color", bl.Color); item.SetAttr("ColorValue", bl.ColorValue); item.SetAttr("DelayLoadSecond", bl.DelayLoadSecond.Value.ToString()); dr.TemplateXml = list.ToString(); dr.TemplateString = dr.TemplateString + "," + blockId; dr.Update(); }
public IActionResult Index(HomeViewModel _homeViewModel) { ViewData["Message"] = "Element: " + _homeViewModel.DataID; if (string.IsNullOrWhiteSpace(_homeViewModel.changeAction)) { IniViewData(); _homeViewModel = populateViewModelWithDataElement(_homeViewModel); } else if (_homeViewModel.changeAction.ToUpper() == "U") { DataElement dataElement = _context.DataElement.Include("datatype").Include("datatype.facets").SingleOrDefault(u => u.identifier.Substring(u.identifier.LastIndexOf(@"/") + 1).Equals(_homeViewModel.DataID)); dataElement.name = _homeViewModel.name; dataElement.domain = _homeViewModel.domain; dataElement.status = _homeViewModel.status; dataElement.definition = _homeViewModel.definition; dataElement.guidance = _homeViewModel.guidance; dataElement.identifier = _homeViewModel.identifier; dataElement.sourceURL = _homeViewModel.sourceURL; dataElement.version = _homeViewModel.version; Change currentChange = new Change() { ChangeType = _homeViewModel.changeAction, UpdatedElement = dataElement }; ChangeSet cs = _context.ChangeSet.Include("Changes").SingleOrDefault(c => c.ID.Equals(_homeViewModel.changeSetID.Trim())); if (cs.Changes == null) { cs.Changes = new List <Change>(); } cs.Changes.Add(currentChange); _context.Update(cs); _context.SaveChanges(); } return(View()); }
public void GetFragmentByIndexesReturnsFragmentByIndexes() { DataElement da = Helpers.CreateTestDataElementWithTwoNumericColumns(); List <Index> rows = new List <Index> { new Index(1) }; List <Index> cols = new List <Index> { new Index(0), new Index(3) }; var frag = da.GetFragmentByIndexes(rows, cols); Assert.AreEqual(5.05, frag.Rows[0].Data[0]); Assert.AreEqual(4.05, frag.Rows[0].Data[1]); Assert.AreEqual(1, frag.Rows.Count); Assert.AreEqual(2, frag.Columns.Count); Assert.AreEqual(2, frag.Rows[0].Data.Count); Assert.AreEqual(2, frag.Rows[0].Legends.Count); Assert.AreEqual(1, frag.Columns[0].Data.Count); Assert.AreEqual(1, frag.Columns[0].Legends.Count); Assert.AreEqual(1, frag.Columns[1].Data.Count); Assert.AreEqual(1, frag.Columns[1].Legends.Count); }
/// <summary> /// 获取流程图元数据 /// </summary> /// <param name="dataManager">数据管理器</param> /// <param name="slotContainerList">流程图插槽容器的链表</param> /// <returns>流程图元数据的链表</returns> protected override List <FlowChartMetaData> GetMetaData(DataManager dataManager, List <SlotContainer> slotContainerList) { List <FlowChartMetaData> metaDataList = new List <FlowChartMetaData>(); List <GraphElement> graphElementList = new List <GraphElement>(); Hashtable graphElementTable = new Hashtable(); foreach (SlotContainer slotContainer in slotContainerList) { if (slotContainer is EventGraphElement) { object data = dataManager.GetData(slotContainer); DataElement dataElement = dataManager.GetDataElement(slotContainer); FlowChartMetaData metaData = new FlowChartMetaData(slotContainer.ID, data, "EventNode"); metaData.Code = CodeProvider.CodeProviderClass.ConvertToCode(data, dataElement.DataType); metaData.DisplayText = slotContainer.TooltipText; FindNextMetaData(dataManager, slotContainer, metaData, graphElementList, graphElementTable); metaDataList.Add(metaData); } } return(metaDataList); }
// CHANGE_RANGE_SPECIAL // private byte[] changeRangeSpecial(DataElement obj) { // change a sequence of bytes in our buffer to some special chars var data = obj.Value.Value; int start = 0; int end = 0; byte[] special = { 0x00, 0x01, 0xFE, 0xFF }; getRange(data.Length, out start, out end, 100); byte[] ret = new byte[data.Length]; Buffer.BlockCopy(data, 0, ret, 0, data.Length); for (int i = start; i < end; ++i) { ret[i] = context.Random.Choice(special); } return(ret); }
private static List <DataElement> GetDataElements(string org, string app, int instanceOwnerId, Guid instanceId) { string path = GetDataPath(org, app, instanceOwnerId, instanceId); List <DataElement> dataElements = new List <DataElement>(); if (Directory.Exists(path)) { string[] files = Directory.GetFiles(path); foreach (string file in files) { if (!file.Contains(".pretest")) { string content = File.ReadAllText(Path.Combine(path, file)); DataElement dataElement = (DataElement)JsonConvert.DeserializeObject(content, typeof(DataElement)); dataElements.Add(dataElement); } } } return(dataElements); }
// PERFORM_MUTATION // private void performMutation(DataElement obj, int pos) { var stream = obj.Value; System.Diagnostics.Debug.Assert(pos < stream.LengthBytes); int len = Math.Min((int)stream.LengthBytes - pos, inject.Length); long cur = stream.TellBits(); stream.SeekBytes(pos, System.IO.SeekOrigin.Begin); for (int i = 0; i < len; ++i) { stream.WriteByte(inject[i]); } stream.SeekBits(cur, System.IO.SeekOrigin.Begin); obj.MutatedValue = new Variant(obj.Value); obj.mutationFlags = DataElement.MUTATE_DEFAULT; obj.mutationFlags |= DataElement.MUTATE_OVERRIDE_TYPE_TRANSFORM; }
private string GetInformHtml(DataCollection dl, Aim.Portal.Model.WebPart bl, DataElement di) { StringBuilder sb = new StringBuilder(); /*DateTime nowDate = DateTime.Now; * for (int i = 0; i < dl.GetItemCount(); i++) * { * if (i == int.Parse(bl.RepeatItemCount)) * break; * DataItem diP = dl.GetItem(i); * if (di.GetAttr("Fate") != "" && ((TimeSpan)nowDate.Subtract((DateTime.Parse(diP.GetAttr("PostTime"))))).Days <= Convert.ToInt32(di.GetAttr("Fate"))) * { * sb.AppendFormat("<TABLE width='100%' border='0' style='TABLE-LAYOUT: fixed;BORDER-COLLAPSE: collapse'><TR><TD WIDTH='*'><div class=\"linkdiv\" Title=\"{1}\"><IMG SRC=\"image/new.gif\" WIDTH=\"15\" HEIGHT=\"10\" BORDER=\"0\" ALT=\"\"><a onclick=\"OpenNews('/officeauto/PubInfo/InformView.aspx?FuncType=View&Id={0}');\" href='javascript:void(0);'>{1}</a></div></TD><TD WIDTH='80px' align='center'><div class=\"linkdiv\">{2}</div></TD></TR></TABLE>", diP.GetAttr("Id"), diP.GetAttr("Title"), DateTime.Parse(diP.GetAttr("PostTime")).ToString("yyyy-MM-dd")); * } * else * { * sb.AppendFormat("<TABLE width='100%' border='0' style='TABLE-LAYOUT: fixed;BORDER-COLLAPSE: collapse'><TR><TD WIDTH='*'><div class=\"linkdiv\" Title=\"{1}\"><IMG SRC=\"Blockimages/Icons/sms.gif\" WIDTH=\"15\" HEIGHT=\"10\" BORDER=\"0\" ALT=\"\"><a onclick=\"OpenNews('/officeauto/PubInfo/InformView.aspx?FuncType=View&Id={0}');\" href='javascript:void(0);'>{1}</a></div></TD><TD WIDTH='80px' align='center'><div class=\"linkdiv\">{2}</div></TD></TR></TABLE>", diP.GetAttr("Id"), diP.GetAttr("Title"), DateTime.Parse(diP.GetAttr("PostTime")).ToString("yyyy-MM-dd")); * } * } * sb.Append("<TABLE width='100%' border='0' style='TABLE-LAYOUT: fixed;BORDER-COLLAPSE: collapse'><TR><TD><div align=\"right\" style=\"padding:2px;font-size:12px;\"><a href=\"javascript:OpenCatalogNews('/officeauto/pubinfo/CatalogQuery.aspx?CatalogName=" + di.GetAttr("CatalogName") + "&CatalogId=" + di.GetAttr("CatalogId") + "')\">更多</a></div></TD></TR></TABLE>");*/ return(sb.ToString()); }
// PERFORM_MUTATION // private void performMutation(DataElement obj, int pos) { var stream = obj.Value; System.Diagnostics.Debug.Assert(pos < stream.Length); int len = Math.Min((int)stream.Length - pos, inject.Length); long cur = stream.PositionBits; stream.Seek(pos, System.IO.SeekOrigin.Begin); for (int i = 0; i < len; ++i) { stream.WriteByte(inject[i]); } stream.SeekBits(cur, System.IO.SeekOrigin.Begin); obj.MutatedValue = new Variant(stream); obj.mutationFlags = MutateOverride.Default; obj.mutationFlags |= MutateOverride.TypeTransform; }
public void ApplyToDataSortsData() { SortCommand cmd = new SortCommand() { Index = new Index("column 1"), SortOrder = SortOrder.Descending }; DataElement da = Helpers.CreateTestDataElement(); cmd.ApplyToData(da); Assert.AreEqual(5.05, da.Columns[0].Data[0]); Assert.AreEqual(1.0, da.Columns[0].Data[1]); Assert.AreEqual("client 2", da.Columns[1].Data[0]); Assert.AreEqual("client 1", da.Columns[1].Data[1]); Assert.AreEqual(true, da.Columns[2].Data[0]); Assert.AreEqual(false, da.Columns[2].Data[1]); Assert.AreEqual(da.Columns[0].Data[0], da.Rows[0].Data[0]); Assert.AreEqual(da.Columns[0].Data[1], da.Rows[1].Data[0]); Assert.AreEqual(da.Columns[1].Data[0], da.Rows[0].Data[1]); Assert.AreEqual(da.Columns[1].Data[1], da.Rows[1].Data[1]); Assert.AreEqual(da.Columns[2].Data[0], da.Rows[0].Data[2]); Assert.AreEqual(da.Columns[2].Data[1], da.Rows[1].Data[2]); }
/// <inheritdoc /> public async Task <DataElement> UpdateBinaryData(string org, string app, int instanceOwnerId, Guid instanceGuid, Guid dataGuid, HttpRequest request) { string instanceIdentifier = $"{instanceOwnerId}/{instanceGuid}"; string apiUrl = $"{_platformSettings.ApiStorageEndpoint}instances/{instanceIdentifier}/data/{dataGuid}"; string token = JwtTokenUtil.GetTokenFromContext(_httpContextAccessor.HttpContext, _settings.RuntimeCookieName); StreamContent content = CreateContentStream(request); HttpResponseMessage response = await _client.PutAsync(token, apiUrl, content); if (response.IsSuccessStatusCode) { string instancedata = await response.Content.ReadAsStringAsync(); DataElement dataElement = JsonConvert.DeserializeObject <DataElement>(instancedata); return(dataElement); } _logger.LogError($"Updating attachment {dataGuid} for instance {instanceGuid} failed with status code {response.StatusCode}"); throw await PlatformHttpException.CreateAsync(response); }
public async Task <ActionResult> Delete( [FromRoute] string org, [FromRoute] string app, [FromRoute] int instanceOwnerPartyId, [FromRoute] Guid instanceGuid, [FromRoute] Guid dataGuid) { Instance instance = await _instanceService.GetInstance(app, org, instanceOwnerPartyId, instanceGuid); if (instance == null) { return(NotFound("Did not find instance")); } DataElement dataElement = instance.Data.Find(m => m.Id.Equals(dataGuid.ToString())); if (dataElement == null) { return(NotFound("Did not find data element")); } string dataType = dataElement.DataType; bool?appLogic = await RequiresAppLogic(org, app, dataType); if (appLogic == null) { string errorMsg = $"Could not determine if {dataType} requires app logic for application {org}/{app}"; _logger.LogError(errorMsg); return(BadRequest(errorMsg)); } else if ((bool)appLogic) { // trying deleting a form element return(BadRequest("Deleting form data is not possible at this moment.")); } return(await DeleteBinaryData(org, app, instanceOwnerPartyId, instanceGuid, dataGuid)); }
public async Task <ActionResult <DataElement> > Delete(int instanceOwnerPartyId, Guid instanceGuid, Guid dataGuid) { _logger.LogInformation($"//DataController // Delete // Starting method"); string instanceId = $"{instanceOwnerPartyId}/{instanceGuid}"; Instance instance = await _instanceRepository.GetOne(instanceId, instanceOwnerPartyId); if (instance == null) { return(NotFound("Provided instanceId is unknown to storage service")); } DataElement dataElement = await _dataRepository.Read(instanceGuid, dataGuid); if (dataElement == null) { return(NotFound("Provided dataGuid is unknown to storage service")); } try { string storageFileName = DataElementHelper.DataFileName(instance.AppId, instanceGuid.ToString(), dataGuid.ToString()); await _dataRepository.DeleteDataInStorage(instance.Org, storageFileName); await _dataRepository.Delete(dataElement); await DispatchEvent(InstanceEventType.Deleted.ToString(), instance, dataElement); return(Ok(dataElement)); } catch (Exception deleteException) { _logger.LogError($"Unable to delete data element {dataGuid} due to {deleteException}"); return(StatusCode(500, $"Unable to delete data element {dataGuid} due to {deleteException.Message}")); } }
public async Task <ActionResult> Get( [FromRoute] string org, [FromRoute] string app, [FromRoute] int instanceOwnerId, [FromRoute] Guid instanceGuid, [FromRoute] Guid dataGuid) { Instance instance = await instanceService.GetInstance(app, org, instanceOwnerId, instanceGuid); DataElement dataElement = instance.Data.Find(d => d.Id == dataGuid.ToString()); Stream dataStream = await dataService.GetData(org, app, instanceOwnerId, instanceGuid, dataGuid); if (dataStream != null) { return(File(dataStream, dataElement.ContentType, dataElement.FileName)); } else { return(NotFound()); } }
public override SongGenre GetClass(DataElement data) { base.GetClass(data); if (!data.HasFeaturesExtracted()) { data.GetFeatures(); } int nvars = data.MeanVector.Length; double[] preparedData = new double[nvars]; for (int j = 0; j < nvars; j++) { preparedData[j] = data.MeanVector[j]; } double[] result = new double[nClasses]; alglib.dfprocess(Decisionforest, preparedData, ref result); double max = Enumerable.Max(result); data.Probability = max; return((SongGenre)result.IndexOf(max)); }
public async Task <ActionResult> Get( [FromRoute] string org, [FromRoute] string app, [FromRoute] int instanceOwnerPartyId, [FromRoute] Guid instanceGuid, [FromRoute] Guid dataGuid) { Instance instance = await _instanceService.GetInstance(app, org, instanceOwnerPartyId, instanceGuid); if (instance == null) { return(NotFound($"Did not find instance {instance}")); } DataElement dataElement = instance.Data.FirstOrDefault(m => m.Id.Equals(dataGuid.ToString())); if (dataElement == null) { return(NotFound("Did not find data element")); } string dataType = dataElement.DataType; bool?appLogic = await RequiresAppLogic(org, app, dataType); if (appLogic == null) { string error = $"Could not determine if {dataType} requires app logic for application {org}/{app}"; _logger.LogError(error); return(BadRequest(error)); } else if ((bool)appLogic) { return(await GetFormData(org, app, instanceOwnerPartyId, instanceGuid, dataGuid, dataType)); } return(await GetBinaryData(org, app, instanceOwnerPartyId, instanceGuid, dataGuid, dataElement)); }
private static T[] ConvertDataToProperType <T>(DataElement data, ArrayType arrayType) { switch (arrayType) { case ArrayType.MxDouble: return(DataExtraction.GetDataAsDouble(data).ToArrayLazily() as T[]); case ArrayType.MxSingle: return(DataExtraction.GetDataAsSingle(data).ToArrayLazily() as T[]); case ArrayType.MxInt8: return(DataExtraction.GetDataAsInt8(data).ToArrayLazily() as T[]); case ArrayType.MxUInt8: return(DataExtraction.GetDataAsUInt8(data).ToArrayLazily() as T[]); case ArrayType.MxInt16: return(DataExtraction.GetDataAsInt16(data).ToArrayLazily() as T[]); case ArrayType.MxUInt16: return(DataExtraction.GetDataAsUInt16(data).ToArrayLazily() as T[]); case ArrayType.MxInt32: return(DataExtraction.GetDataAsInt32(data).ToArrayLazily() as T[]); case ArrayType.MxUInt32: return(DataExtraction.GetDataAsUInt32(data).ToArrayLazily() as T[]); case ArrayType.MxInt64: return(DataExtraction.GetDataAsInt64(data).ToArrayLazily() as T[]); case ArrayType.MxUInt64: return(DataExtraction.GetDataAsUInt64(data).ToArrayLazily() as T[]); default: throw new NotSupportedException(); } }
public async Task Proceess_Start_With_Prefill_OK() { TestDataUtil.DeleteInstanceAndData("tdd", "endring-av-navn", 1337, new System.Guid("26233fb5-a9f2-45d4-90b1-f6d93ad40713")); TestDataUtil.PrepareInstance("tdd", "endring-av-navn", 1337, new System.Guid("26233fb5-a9f2-45d4-90b1-f6d93ad40713")); string token = PrincipalUtil.GetToken(1337); HttpClient client = SetupUtil.GetTestClient(_factory, "tdd", "endring-av-navn"); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); HttpRequestMessage httpRequestMessage = new HttpRequestMessage(HttpMethod.Post, "/tdd/endring-av-navn/instances/1337/26233fb5-a9f2-45d4-90b1-f6d93ad40713/process/start"); HttpResponseMessage response = await client.SendAsync(httpRequestMessage); Assert.Equal(HttpStatusCode.OK, response.StatusCode); // fetch instance and get data element id httpRequestMessage = new HttpRequestMessage(HttpMethod.Get, $"/tdd/endring-av-navn/instances/1337/26233fb5-a9f2-45d4-90b1-f6d93ad40713/"); response = await client.SendAsync(httpRequestMessage); Instance instance = JsonConvert.DeserializeObject <Instance>(await response.Content.ReadAsStringAsync()); DataElement dataElement = instance.Data.First(); Assert.Equal(HttpStatusCode.OK, response.StatusCode); // fetch actual data and compare to expected prefill httpRequestMessage = new HttpRequestMessage(HttpMethod.Get, $"/tdd/endring-av-navn/instances/1337/26233fb5-a9f2-45d4-90b1-f6d93ad40713/data/{dataElement.Id}"); response = await client.SendAsync(httpRequestMessage); string responseContent = await response.Content.ReadAsStringAsync(); Assert.Equal(HttpStatusCode.OK, response.StatusCode); var skjema = JsonConvert.DeserializeObject <App.IntegrationTests.Mocks.Apps.tdd.endring_av_navn.Skjema>(responseContent); Assert.Equal("01039012345", skjema.Tilknytninggrp9315.TilknytningTilNavnetgrp9316.TilknytningMellomnavn2grp9353.PersonMellomnavnAndreTilknyttetGardNavndatadef34931.value); Assert.Equal("Oslo", skjema.Tilknytninggrp9315.TilknytningTilNavnetgrp9316.TilknytningMellomnavn2grp9353.PersonMellomnavnAndreTilknyttetPersonsEtternavndatadef34930.value); Assert.Equal("Grev Wedels Plass", skjema.Tilknytninggrp9315.TilknytningTilNavnetgrp9316.TilknytningMellomnavn2grp9353.PersonMellomnavnAndreTilknytningBeskrivelsedatadef34928.value); TestDataUtil.DeleteInstanceAndData("tdd", "endring-av-navn", 1337, new System.Guid("26233fb5-a9f2-45d4-90b1-f6d93ad40713")); }
public void TestClone_CollectionOfItems() { PolicyObjectCollection<IDataItem> items = new PolicyObjectCollection<IDataItem>(); items.Add(DataItem.CreateDataItem(new TranslateableLanguageItem(Guid.NewGuid()), DataType.String, "string 1")); items.Add(DataItem.CreateDataItem(new TranslateableLanguageItem(Guid.NewGuid()), DataType.String, "string 2")); items.Add(DataItem.CreateDataItem(new TranslateableLanguageItem(Guid.NewGuid()), DataType.String, "string 3")); DataElement elem = new DataElement( new TranslateableLanguageItem(Guid.NewGuid()), new TranslateableLanguageItem(Guid.NewGuid()), DataType.String, items ); DataElement copy = elem.Clone() as DataElement; Assert.IsNotNull(copy.Data); PolicyObjectCollection<IDataItem> copyOfItems = copy.Data as PolicyObjectCollection<IDataItem>; Assert.IsNotNull(copyOfItems); Assert.AreEqual(3, copyOfItems.Count); for (int i = 0; i < copyOfItems.Count; i++) { IDataItem item = items[i]; IDataItem copyOfItem = copyOfItems[i]; Assert.IsNotNull(item); Assert.IsNotNull(copyOfItem); Assert.AreNotEqual(item.Identifier, copyOfItem.Identifier); Assert.AreNotEqual(item.Name.Identifier, copyOfItem.Name.Identifier); Assert.AreEqual(item.Name.Value, copyOfItem.Name.Value); Assert.AreEqual(item.ReadOnly, copyOfItem.ReadOnly); Assert.AreEqual(item.Value, copyOfItem.Value); } }
// SEQUENTIAL_MUTATION // public override void sequentialMutation(DataElement obj) { if (signed) { long value = (long)obj.DefaultValue + values[currentCount]; if (obj is Dom.String) { obj.MutatedValue = new Variant(value.ToString()); } else { obj.MutatedValue = new Variant(value); } obj.mutationFlags = MutateOverride.Default; } else { ulong value = (ulong)obj.DefaultValue; if (values[currentCount] < 0) { value -= (ulong)-(values[currentCount]); } else { value += (ulong)values[currentCount]; } if (obj is Dom.String) { obj.MutatedValue = new Variant(value.ToString()); } else { obj.MutatedValue = new Variant(value); } obj.mutationFlags = MutateOverride.Default; } }
/// <summary> /// Re-creates a DICOM file meta information instance from a DICOM /// output stream. The output stream position is assumed to be the /// DICOM stream's start position (mostly zero). /// </summary> public override void LoadFrom(Stream stream) { base.streamPosition = stream.Position; DicomContext.Set(stream, null); byte[] buffer = new byte[132]; stream.Read(buffer, 0, 132); filePreamble = TransferSyntax.ToString(buffer, 128); filePreamble = filePreamble.Replace("\0", null); string dicomPrefix = TransferSyntax.ToString(buffer, 128, 4); if (dicomPrefix.Equals(DicomPrefix)) { // group length DataElement element = new DataElement(stream, TransferSyntax); Add(element); uint groupLength = (uint)element.Value[0]; long streamPosition = stream.Position; // consider omission of current stream position buffer = new byte[streamPosition + groupLength]; stream.Read(buffer, (int)streamPosition, (int)groupLength); MemoryStream memoryStream = new MemoryStream(buffer); try { memoryStream.Seek(streamPosition, 0); base.LoadFrom(memoryStream); } finally { memoryStream.Close(); } } else { stream.Close(); throw new DicomException("Working with a non-valid DICOM file."); } DicomContext.Reset(); }
/// <summary> /// Gets the target objects from the specified source. /// </summary> /// <param name="sourceElement">The source element to consider.</param> /// <param name="pathDetail">The path detail to consider.</param> /// <param name="scope">The scope to consider.</param> /// <param name="scriptVariableSet">The script variable set to consider.</param> /// <param name="log">The log to consider.</param> /// <returns>Returns the target objects.</returns> public static List <object> Get( DataElement sourceElement = null, DataElementSet pathDetail = null, IBdoScope scope = null, IScriptVariableSet scriptVariableSet = null, IBdoLog log = null) { List <object> objects = new List <object>(); if (sourceElement == null) { log?.AddError("Source element missing"); } else { if (!(sourceElement.Items[0] is RepositoryFile file)) { log?.AddError("Source file missing"); } } return(objects); }
private Variant doFixupImpl(DataElement obj) { System.Diagnostics.Debug.Assert(parent != null); if (elements == null) { elements = new Dictionary <string, DataElement>(); foreach (var kv in refs) { var elem = obj.find(kv.Value); if (elem == null) { throw new PeachException(string.Format("{0} could not find ref element '{1}'", this.GetType().Name, kv.Value)); } elem.Invalidated += new InvalidatedEventHandler(OnInvalidated); elements.Add(kv.Key, elem); } } return(fixupImpl()); }
/// <inheritdoc /> public void DeleteFormAttachment(string org, string app, int instanceOwnerId, Guid instanceId, string attachmentType, string attachmentId) { string developer = AuthenticationHelper.GetDeveloperUserName(_httpContextAccessor.HttpContext); string testDataForParty = _settings.GetTestdataForPartyPath(org, app, developer); string instanceFilePath = $"{testDataForParty}{instanceOwnerId}/{instanceId}/{instanceId}.json"; lock (Guard(instanceId)) { string instanceData = File.ReadAllText(instanceFilePath); Instance instance = JsonConvert.DeserializeObject <Instance>(instanceData); DataElement removeFile = instance.Data.Find(m => m.Id == attachmentId); instance.Data.Remove(removeFile); string instanceDataAsString = JsonConvert.SerializeObject(instance); File.WriteAllText(instanceFilePath, instanceDataAsString); } string pathToDelete = $"{_settings.GetTestdataForPartyPath(org, app, developer)}{instanceOwnerId}/{instanceId}/data/{attachmentId.AsFileName()}"; File.Delete(pathToDelete); }
void RemoveElement(DataElement element) { CrackNode currentModel; if (!crackMap.TryGetValue(element, out currentModel)) { return; } if (element.parent != null && crackMap.ContainsKey(element.parent)) { crackMap[element.parent].Children.Remove(currentModel); } crackMap.Remove(element); // Remove any elements that have 'element' as a parent var res = crackMap.Select(kv => kv.Key).Where(k => k.parent == element).ToList(); foreach (var elem in res) { RemoveElement(elem); } }
// Get next child public DataElement GetNext(string title) { string tempTitle; foreach (XmlNode child in currentListElement.ChildNodes) { DataElement result = null; if (child.Attributes["Title"].Value == title) { // create object that contains the data about the child nodes Titles result = new DataElement(); result.Title = child.Attributes["Title"].Value; if (child.FirstChild != null) // means no child nodes { currentListElement = child.FirstChild; // add subelements subtitles result.SubTitles.AddRange(GetChildTitles()); } return(result); } } return(null); }
public void TestClone2() { IDataMethod fileMethod = new DataMethod("CurrentFile"); IDataSource dataSource = new DataSource("this", "this", fileMethod); IDataElement dataElement = new DataElement(Guid.NewGuid(), new NonTranslateableLanguageItem("file"), new NonTranslateableLanguageItem(""), DataType.Object, dataSource); IParameter parameter = new Parameter("file", dataElement); IParameter parameterCopy = ((PolicyObject)parameter).Clone() as IParameter; Assert.AreNotEqual(parameter.Identifier, parameterCopy.Identifier, "unexpected identifier in condition.dataleft.data.method.parameters[0]"); Assert.AreEqual(parameter.Name.Identifier, parameterCopy.Name.Identifier, "unexpected name in condition.dataleft.data.method.parameters[0]"); //nontranslateable Assert.AreEqual(parameter.Name.Value, parameterCopy.Name.Value, "unexpected name in condition.dataleft.data.method.parameters[0]"); IDataElement dataElementCopy = parameterCopy.Value as IDataElement; Assert.IsNotNull(dataElementCopy, "unexpected object type in condition1copy.dataleft.data.method.parameters[0].value"); Assert.AreNotEqual(dataElement.Identifier, dataElementCopy.Identifier); Assert.AreEqual(dataElement.Name.Identifier, dataElementCopy.Name.Identifier); Assert.AreEqual(dataElement.Name.Value, dataElementCopy.Name.Value); Assert.AreEqual(dataElement.DisplayName.Identifier, dataElementCopy.DisplayName.Identifier); Assert.AreEqual(dataElement.DisplayName.Value, dataElementCopy.DisplayName.Value); Assert.AreEqual(dataElement.Type, dataElementCopy.Type); }
private static void SaveUserProperties(DataElement container, PropertiesContainer properties) { foreach(KeyValuePair<string, IProperty> kvp in properties.UserProperties) { DataElement element = container.CreateChild("property"); element.CreateAttribute("name", kvp.Key); element.CreateAttribute("value", kvp.Value.ToString()); } }
private static void LoadUserProperties(DataElement container, PropertiesContainer properties) { IDictionary<string, IProperty> propertiesMap = properties.UserProperties; foreach(DataElement element in container.CollectChildren("property")) { string name = element.GetAttribValue("name"); IProperty property; if(propertiesMap.TryGetValue(name, out property)) { string valueStr = element.GetAttribValue("value"); string errorStr = property.TrySetValue(valueStr); if(errorStr != null) { throw new InvalidDataException(); } } } }
private static void SaveShapeCircle(DataElement node, ShapeCircle shapeCircle) { node.CreateAttribute("position", shapeCircle.Position.ToString()); node.CreateAttribute("radius", shapeCircle.Radius.ToString()); node.CreateAttribute("angle", shapeCircle.Angle.ToString()); }
private static void LoadShapeCircle(DataElement node, ShapeCircle shapeCircle) { shapeCircle.Position = Vector2f.Parse(node.GetAttribValue("position")); shapeCircle.Radius = float.Parse(node.GetAttribValue("radius")); shapeCircle.Angle = float.Parse(node.GetAttribValue("angle")); }
private static void SaveShape(DataElement node, Shape shape) { node.CreateAttribute("template_name", shape.Template.Name); node.CreateAttribute("z_order", shape.ZOrder.ToString()); if(shape.EditableColor) { node.CreateAttribute("color", shape.Color.ToArgb().ToString()); } DataElement circlesEl = node.CreateChild("circles"); foreach(ShapeCircle circle in shape.Circles) { SaveShapeCircle(circlesEl.CreateChild("circle"), circle); } DataElement propertiesEl = node.CreateChild("user_properties"); SaveUserProperties(propertiesEl, shape); }
private static void LoadShape(DataElement node, Shape shape, ShapeTemplatesSet templates) { string templateName = node.GetAttribValue("template_name"); ShapeTemplate template = templates.FindTemplate(templateName); shape.Template = template; shape.ZOrder = float.Parse(node.GetAttribValue("z_order")); string colorStr = node.GetAttribValue("color"); if(colorStr != null) { shape.Color = Color.FromArgb(int.Parse(colorStr)); } if(shape.EditableColor) { node.CreateAttribute("color", shape.Color.ToArgb().ToString()); } DataElement circlesEl = node.GetChild("circles"); IList<DataElement> circleElList = circlesEl.CollectChildren("circle"); IList<ShapeCircle> circles = shape.Circles; for(int index = 0; index < circleElList.Count; ++index) { DataElement circleEl = circleElList[index]; ShapeCircle circle = circles[index]; LoadShapeCircle(circleEl, circle); } DataElement userPropertiesEl = node.GetChild("user_properties"); LoadUserProperties(userPropertiesEl, shape); }
private static void SaveScene(DataElement sceneElement, Scene scene) { sceneElement.CreateAttribute("size", scene.Size.ToString()); DataElement sceneObjectContainer = sceneElement.CreateChild("shapes"); foreach(Shape shape in scene.Shapes) { DataElement shapeEl = sceneObjectContainer.CreateChild("shape"); shapeEl.CreateAttribute("name", shape.Name); SaveShape(shapeEl, shape); } DataElement propertiesContainer = sceneElement.CreateChild("properties"); SaveUserProperties(propertiesContainer, scene); }
private static void CreateImageTemplate(DataElement node, string folder, ShapeTemplatesSet templates) { TemplateBaseInfo info = LoadTemplateBaseInfo(node, folder); ImageTemplate template = templates.CreateImageTemplate(info.name, info.propertiesFilepath); string relDiffuseFilepath = node.GetAttribValue("rel_diffuse_filepath"); template.DiffuseFilepath = DirMethods.EvaluateAbsolutePath(folder, relDiffuseFilepath); LoadRectTemplate(node, template); }
private static void LoadCircleTemplate(DataElement node, CircleTemplate template) { LoadBaseTemplate(node, template); string solidStr = node.GetAttribValue("solid"); template.Solid = bool.Parse(solidStr); }
private static void LoadRectTemplate(DataElement node, RectTemplate template) { LoadBaseTemplate(node, template); string normalizedStr = node.GetAttribValue("normalized"); template.Normalized = bool.Parse(normalizedStr); }
private static void LoadBaseTemplate(DataElement node, ShapeTemplate template) { string colorStr = node.GetAttribValue("color"); string backgroudStr = node.GetAttribValue("background"); template.Color = Color.FromArgb(int.Parse(colorStr)); template.Backgroud = bool.Parse(backgroudStr); string editableColorStr = node.GetAttribValue("editable_color"); if(editableColorStr != null) { template.EditableColor = bool.Parse(editableColorStr); } DataElement circlesEl = node.GetChild("circles"); List<ShapeCircle> allCircles = template.RootCircle.AllCircles; int index = 0; foreach(DataElement circleEl in circlesEl.CollectChildren("circle")) { string positionStr = circleEl.GetAttribValue("position"); string radiusStr = circleEl.GetAttribValue("radius"); string angleStr = circleEl.GetAttribValue("angle"); ShapeCircle circle = allCircles[index]; circle.Position = Vector2f.Parse(positionStr); circle.Radius = float.Parse(radiusStr); circle.Angle = float.Parse(angleStr); ++index; } DataElement circlesSettingsEl = node.GetChild("circles_settings"); index = 0; foreach(DataElement circleSettingsEl in circlesSettingsEl.CollectChildren("settings")) { ShapeTemplate.ShapeCircleSettings settings = template.PerCircleSettings[index]; string enableOffsetStr = circleSettingsEl.GetAttribValue("enable_offset"); string enableRotateStr = circleSettingsEl.GetAttribValue("enable_rotate"); settings.EnableOffset = bool.Parse(enableOffsetStr); settings.EnableRotate = bool.Parse(enableRotateStr); ++index; } }
private static TemplateBaseInfo LoadTemplateBaseInfo(DataElement node, string folder) { TemplateBaseInfo info = new TemplateBaseInfo(); info.name = node.GetAttribValue("name"); string relPropertiesFilepath = node.GetAttribValue("rel_properties_filepath"); if(!string.IsNullOrEmpty(relPropertiesFilepath)) { info.propertiesFilepath = DirMethods.EvaluateAbsolutePath(folder, relPropertiesFilepath); } return info; }
private static void CreateRectTemplate(DataElement node, string folder, ShapeTemplatesSet templates) { TemplateBaseInfo info = LoadTemplateBaseInfo(node, folder); RectTemplate template = templates.CreateRectTemplate(info.name, info.propertiesFilepath); LoadRectTemplate(node, template); }
internal InboundInterfaceElement GetInboundRequestElement() { var inboundRequest = new InboundInterfaceElement(); // Initialize User inboundRequest.user = ToaUserUtil.GetInboundUser(); //Initialize Head var head = new HeadElement(); head.allow_change_date = ToaStringsUtil.GetString(_allowChangeDate); head.date = _uploadDate; head.default_appointment_pool = _defaultAppointmentPool; head.id = _transactionId; head.processing_mode = ToaStringsUtil.GetString(_processingMode); head.properties_mode = ToaStringsUtil.GetString(_propertiesMode); head.upload_type = ToaStringsUtil.GetString(_uploadType); head.provider_group = _providerGroup; if(null != _activitySettings) head.appointment = _activitySettings.GetActivitySettings(); if(null != _inventorySettings) head.inventory = _inventorySettings.GetInventorySettings(); inboundRequest.head = head; //initialize Data var data = new DataElement(); var noOfModels = _dataModels.Count; CommandElement [] commands = null; ProviderElement [] providers = null; if (UploadType == UploadType.Full) // Full Upload { providers = new ProviderElement[noOfModels]; foreach (var model in _dataModels) { if (model is WorkOrderModel) { var activityModel = ((WorkOrderModel) model); var providerElement = new ProviderElement(); providerElement.appointment = activityModel.GetActivityElement(); providers[--noOfModels] = providerElement; } else if (model is InventoryModel) { //TODO: Need to initialize inventory object } } data.providers = providers; } else // Incremental Upload { commands = new CommandElement[noOfModels]; foreach (var model in _dataModels) { if (model is WorkOrderModel) { var workOrderModel = ((WorkOrderModel)model); var command = new CommandElement(); command.appointment = workOrderModel.GetActivityElement(); command.date = workOrderModel.AssignedDate; command.external_id = workOrderModel.ExternalId; command.type = ToaStringsUtil.GetString(workOrderModel.CommandType); commands[--noOfModels] = command; } else if (model is InventoryModel) { //TODO: Need to initialize inventory object } } data.commands = commands; } inboundRequest.data = data; return inboundRequest; }
private static void LoadScene(DataElement sceneElement, Scene scene, ShapeTemplatesSet templates) { scene.Size = Vector2f.Parse(sceneElement.GetAttribValue("size")); DataElement shapesEl = sceneElement.GetChild("shapes"); foreach(DataElement shapeEl in shapesEl.CollectChildren("shape")) { string name = shapeEl.GetAttribValue("name"); Shape shape = scene.CreateShape(name); LoadShape(shapeEl, shape, templates); } DataElement propertiesContainer = sceneElement.GetChild("properties"); if(propertiesContainer != null) { LoadUserProperties(propertiesContainer, scene); } }
private static void SaveBaseTemplate(DataElement node, string folder, ShapeTemplate template) { node.CreateAttribute("name", template.Name); node.CreateAttribute("color", template.Color.ToArgb().ToString()); node.CreateAttribute("editable_color", template.EditableColor.ToString()); node.CreateAttribute("background", template.Backgroud.ToString()); DataElement circlesEl = node.CreateChild("circles"); foreach(ShapeCircle circle in template.RootCircle.AllCircles) { DataElement circleEl = circlesEl.CreateChild("circle"); circleEl.CreateAttribute("position", circle.Position.ToString()); circleEl.CreateAttribute("radius", circle.Radius.ToString()); circleEl.CreateAttribute("angle", circle.Angle.ToString()); } DataElement circlesSettingsEl = node.CreateChild("circles_settings"); foreach(ShapeTemplate.ShapeCircleSettings settings in template.PerCircleSettings) { DataElement circleSettingsEl = circlesSettingsEl.CreateChild("settings"); circleSettingsEl.CreateAttribute("enable_offset", settings.EnableOffset.ToString()); circleSettingsEl.CreateAttribute("enable_rotate", settings.EnableRotate.ToString()); } if(!string.IsNullOrEmpty(template.PropertiesFilepath)) { string relPropertiesFilepath = DirMethods.EvaluateRelativePath(folder, template.PropertiesFilepath); node.CreateAttribute("rel_properties_filepath", relPropertiesFilepath); } }
private static void SaveRectTemplate(DataElement node, string folder, RectTemplate template) { SaveBaseTemplate(node, folder, template); node.CreateAttribute("normalized", template.Normalized.ToString()); }