/// <summary> /// The create implementation. /// </summary> /// <param name="entity"> /// The entity. /// </param> /// <param name="keyProviders"> /// The key providers. /// </param> /// <param name="descriptionProviders"> /// The description providers. /// </param> /// <returns> /// an object summary /// </returns> public static ObjectSummary CreateImplementation(object entity, List <IKeyProvider> keyProviders = null, List <IDescriptionProvider> descriptionProviders = null) { var objectSummary = new ObjectSummary { EntityTypeName = entity.GetType().Name }; foreach (RegisteredKeyProvider registeredKeyProvider in KeyProviders.OrderBy(@kp => @kp.Order)) { ObjectSummaryKeys foundKeys = registeredKeyProvider.Provider.FindKeys(entity); bool keysFound = foundKeys != null; if (keysFound) { objectSummary.Keys = foundKeys; } if (registeredKeyProvider.Breaking && keysFound) { break; } } foreach (RegisteredDescriptionProvider registeredKeyProvider in DescriptionProviders.OrderBy(@dp => @dp.Order)) { string foundDisplayText = registeredKeyProvider.Provider.FindDescription(entity); string[] foundDisplayNames = registeredKeyProvider.Provider.FindDescriptionPropertyNames(entity); if (foundDisplayText != null) { objectSummary.DisplayText = foundDisplayText; } if (foundDisplayNames != null && foundDisplayNames.Any()) { objectSummary.DisplayFields = foundDisplayNames; } if (registeredKeyProvider.Breaking && foundDisplayText != null) { break; } } return(objectSummary); }
public static void Main(string[] args) { if (args.Length < 1) { PrintUsage(); return; } ObjectSummary.RegisterObjects(); try { switch (args[0]) { case "printids": PrintIds(); return; case "dumplog": if (args.Length == 2) { DumpLog(args[1]); return; } break; case "listcomports": ListComPorts(); return; case "readtelemetry": if (args.Length == 2) { ReadTelemetry(args[1]); return; } break; } PrintUsage(); } catch (Exception ex) { Console.Error.WriteLine("ERROR: {0}", ex.Message); } }
private bool CheckAddObject(ObjectSummary o, string prefix, SearchOption searchOption) { // file if (!o.Name.Contains('/')) { return(true); } else if (!string.IsNullOrEmpty(prefix)) { // directory var dirPrefix = prefix; if (!dirPrefix.Contains("/")) { dirPrefix += "/"; } if (o.Name.Contains(dirPrefix)) { int length = o.Name.Replace(dirPrefix, "").Split('/').Length; if (searchOption == SearchOption.AllDirectories) { if (length >= 0) { return(true); } } else { if (length >= 0 && length <= 1) { return(true); } } } } return(false); }
protected override Task OnObjectSummarySelectedExecute(object obj) { ObjectSummary selected = (ObjectSummary)obj; return(this.NavigationService.NavigateToNodeDetailPage(selected.Name)); }
public override void Input() { if (!ModalActive) { return; } IInputMap inputMap = Woofer.Controller.InputManager.ActiveInputMap; Vector2D movement = inputMap.Movement; if (movement.Magnitude > 1e-5 && Editor.MoveTimeframe.Execute()) { if (movement.Y > 0) { if (ComponentLocked) { if (SelectedPropertyIndex - 1 >= 0) { SelectedPropertyIndex--; } } else { if (SelectedAnimationIndex - 1 >= -2) { SelectedAnimationIndex--; } } } else if (movement.Y < 0) { if (ComponentLocked) { if (SelectedPropertyIndex + 1 < SelectedAnimation.Members.Count) { SelectedPropertyIndex++; } } else { if (SelectedAnimationIndex + 1 <= Animations.Count) { SelectedAnimationIndex++; } } } if (movement.Y != 0) { RemoveTimer = 0; } /*if (SelectedComponentIndex < StartOffset) * { * StartOffset = SelectedComponentIndex; * } * if (SelectedComponentIndex > StartOffset + AmountVisible) * { * StartOffset = SelectedComponentIndex - AmountVisible; * }*/ } if (inputMap.Jump.Consume()) { if (SelectedAnimationIndex == Animations.Count) { Animations.Add(new AnimatedSprite()); } else if (!ComponentLocked) { SelectedAnimation = new ObjectSummary(Owner, Animations[SelectedAnimationIndex]); SelectedPropertyIndex = 0; ComponentLocked = true; } else { if (SelectedPropertyIndex >= SelectedAnimation.Members.Count) { return; } IMemberSummary member = SelectedAnimation.Members.Values.ElementAt(SelectedPropertyIndex); if (member.CanSet) { bool modalNeedsChange = member.TriggerEdit(inputMap.Interact.Pressed); if (modalNeedsChange) { ModalActive = false; } } } } if (RemoveTimer > 0) { RemoveTimer--; } if (inputMap.Pulse.Pressed && SelectedAnimationIndex >= 0 && !ComponentLocked) { RemoveTimer += 2; if (RemoveTimer / 25 > 3) { Animations.RemoveAt(SelectedAnimationIndex); RemoveTimer = 0; if (SelectedAnimationIndex >= Animations.Count) { SelectedAnimationIndex = Animations.Count - 1; } } } else { RemoveTimer = 0; } if (SelectedAnimationIndex >= 0 && SelectedAnimationIndex < AnimationRenderOffsets.Count) { int y = AnimationRenderOffsets[SelectedAnimationIndex]; if (y < 0) { ListFromIndex--; } else if (y > 720) { ListFromIndex = Math.Max(0, SelectedAnimationIndex - 2); } } }
public ObjectListing unmarshall(Stream inputStream) { ObjectSummary currObject = null; Owner currOwner = null; StringBuilder currText = new StringBuilder(); Boolean insideCommonPrefixes = false; ObjectListing objectListing = new ObjectListing(); String bucketName = null; String lastKey = null; Boolean truncated = false; String nextMarker = null; XmlReader xr = XmlReader.Create(new BufferedStream(inputStream)); while (xr.Read()) { if (xr.NodeType.Equals(XmlNodeType.Element)) { if (xr.Name.Equals("Contents")) { currObject = new ObjectSummary(); } else if (xr.Name.Equals("CommonPrefixes")) { insideCommonPrefixes = true; } else if (xr.Name.Equals("Owner")) { currOwner = new Owner(); } } else if (xr.NodeType.Equals(XmlNodeType.EndElement)) { if (xr.Name.Equals("Name")) { bucketName = currText.ToString(); } else if (xr.Name.Equals("Delimiter")) { String s = currText.ToString(); if (s.Length > 0) { objectListing.setDelimiter(s); } } else if (xr.Name.Equals("MaxKeys")) { String s = currText.ToString(); if (s.Length > 0) { objectListing.setMaxKeys(int.Parse(currText.ToString())); } } else if (xr.Name.Equals("Prefix")) { if (insideCommonPrefixes) { objectListing.getCommonPrefixes().Add(currText.ToString()); } else { String s = currText.ToString(); if (s.Length > 0) { objectListing.setPrefix(s); } } } else if (xr.Name.Equals("Marker")) { String s = currText.ToString(); if (s.Length > 0) { objectListing.setMarker(s); } } else if (xr.Name.Equals("NextMarker")) { nextMarker = currText.ToString(); } else if (xr.Name.Equals("IsTruncated")) { truncated = Boolean.Parse(currText.ToString()); objectListing.setTruncated(truncated); } else if (xr.Name.Equals("Contents")) { currObject.setBucketName(bucketName); objectListing.getObjectSummaries().Add(currObject); } else if (xr.Name.Equals("Owner")) { currObject.setOwner(currOwner); } else if (xr.Name.Equals("DisplayName")) { currOwner.setDisplayName(currText.ToString()); } else if (xr.Name.Equals("ID")) { currOwner.setId(currText.ToString()); } else if (xr.Name.Equals("LastModified")) { currObject.setLastModified(DateTime.Parse(currText.ToString())); } else if (xr.Name.Equals("ETag")) { currObject.setETag(currText.ToString()); } else if (xr.Name.Equals("CommonPrefixes")) { insideCommonPrefixes = false; } else if (xr.Name.Equals("Key")) { lastKey = currText.ToString(); currObject.setKey(lastKey); } else if (xr.Name.Equals("Size")) { currObject.setSize(long.Parse(currText.ToString())); } currText.Clear(); } else if (xr.NodeType.Equals(XmlNodeType.Text)) { currText.Append(xr.Value); } } objectListing.setBucketName(bucketName); if (truncated) { if (nextMarker == null && lastKey != null) { nextMarker = lastKey; } objectListing.setNextMarker(nextMarker); } return(objectListing); } // end of unmarshall
public string LogDebugInfo() { var debugInfo = new StringBuilder(); debugInfo.AppendLine(); debugInfo.AppendLine(GetMemoryUsage("before")); GC.Collect(); GC.WaitForPendingFinalizers(); GC.Collect(); var debugList = new List <ObjectSummary>(TrackedObjects.Distinct().Count()); ObjectSummary lastObjectSummary = null; foreach (var item in TrackedObjects.OrderBy(r => r.FullName)) { if (lastObjectSummary == null || lastObjectSummary.FullName != item.FullName) { var newItem = new ObjectSummary(item.Name, item.FullName, item.ObjectType, item.WeakRef.IsAlive); debugList.Add(newItem); lastObjectSummary = newItem; } else { lastObjectSummary.UpdateCounts(item.WeakRef.IsAlive); } } List <ObjectSummary> objectsInMemoryOrdered = null; if (DeviceConstants.SortOrderTypes.Active == TrackingSortOrder) { objectsInMemoryOrdered = debugList.OrderByDescending(r => r.Active).ToList(); } else if (DeviceConstants.SortOrderTypes.FullName == TrackingSortOrder) { objectsInMemoryOrdered = debugList.OrderBy(r => r.FullName).ToList(); } else { objectsInMemoryOrdered = debugList.OrderBy(r => r.Name).ToList(); } debugInfo.AppendLine(); debugInfo.AppendLine("------------------------------------------------------------"); debugInfo.AppendLine("Active | Dead | Name "); debugInfo.AppendLine("------------------------------------------------------------"); foreach (var item in objectsInMemoryOrdered) { debugInfo.AppendLine(string.Format("{0,6} | {1,4} | {2,-30}", item.Active, item.Dead, item.Name)); } debugInfo.AppendLine("------------------------------------------------------------"); debugInfo.AppendLine(GetMemoryUsage("after")); Log(debugInfo.ToString()); if (System.Diagnostics.Debugger.IsAttached) { Debug.WriteLine(debugInfo.ToString()); } return(debugInfo.ToString()); }
protected override Task OnObjectSummarySelectedExecute(object obj) { ObjectSummary selected = (ObjectSummary)obj; return(this.NavigationService.NavigateToReplicationControllerDetailPage(selected.Name, selected.NamespaceName)); }
protected override Task OnObjectSummarySelectedExecute(object obj) { ObjectSummary selected = (ObjectSummary)obj; return(this.NavigationService.NavigateToPersistentVolumeClaimDetailPage(selected.Name, selected.NamespaceName)); }
protected override Task OnObjectSummarySelectedExecute(object obj) { ObjectSummary selected = (ObjectSummary)obj; return(this.NavigationService.NavigateToHorizontalPodAutoscalerDetailPage(selected.Name, selected.NamespaceName)); }
public ObjectListing Unmarshall(Stream inputStream) { ObjectSummary currObject = null; Owner currOwner = null; var currText = new StringBuilder(); var insideCommonPrefixes = false; ObjectListing objectListing = new ObjectListing(); string bucketName = null; string lastKey = null; var truncated = false; string nextMarker = null; XmlReader xr = XmlReader.Create(new BufferedStream(inputStream)); while (xr.Read()) { if (xr.NodeType.Equals(XmlNodeType.Element)) { if (xr.Name.Equals("Contents")) { currObject = new ObjectSummary(); } else if (xr.Name.Equals("CommonPrefixes")) { insideCommonPrefixes = true; } else if (xr.Name.Equals("Owner")) { currOwner = new Owner(); } } else if (xr.NodeType.Equals(XmlNodeType.EndElement)) { if (xr.Name.Equals("Name")) { bucketName = currText.ToString(); } else if (xr.Name.Equals("Delimiter")) { string s = currText.ToString(); if (s.Length > 0) { objectListing.Delimiter = s; } } else if (xr.Name.Equals("MaxKeys")) { string s = currText.ToString(); if (s.Length > 0) { objectListing.MaxKeys = int.Parse(currText.ToString()); } } else if (xr.Name.Equals("Prefix")) { if (insideCommonPrefixes) { objectListing.CommonPrefixes.Add(currText.ToString()); } else { string s = currText.ToString(); if (s.Length > 0) { objectListing.Prefix = s; } } } else if (xr.Name.Equals("Marker")) { string s = currText.ToString(); if (s.Length > 0) { objectListing.Marker = s; } } else if (xr.Name.Equals("NextMarker")) { nextMarker = currText.ToString(); } else if (xr.Name.Equals("IsTruncated")) { truncated = bool.Parse(currText.ToString()); objectListing.Truncated = truncated; } else if (xr.Name.Equals("Contents")) { currObject.BucketName = bucketName; objectListing.ObjectSummaries.Add(currObject); } else if (xr.Name.Equals("Owner")) { currObject.Owner = currOwner; } else if (xr.Name.Equals("DisplayName")) { currOwner.DisplayName = currText.ToString(); } else if (xr.Name.Equals("ID")) { currOwner.Id = currText.ToString(); } else if (xr.Name.Equals("LastModified")) { currObject.LastModified = DateTime.Parse(currText.ToString()); } else if (xr.Name.Equals("ETag")) { currObject.ETag = currText.ToString(); } else if (xr.Name.Equals("CommonPrefixes")) { insideCommonPrefixes = false; } else if (xr.Name.Equals("Key")) { currObject.Key = currText.ToString(); } else if (xr.Name.Equals("Size")) { currObject.Size = long.Parse(currText.ToString()); } currText.Clear(); } else if (xr.NodeType.Equals(XmlNodeType.Text)) { currText.Append(xr.Value); } } objectListing.BucketName = bucketName; if (truncated) { if (nextMarker == null && lastKey != null) { nextMarker = lastKey; } objectListing.NextMarker = nextMarker; } return(objectListing); }