示例#1
0
        /// <summary>
        /// Serializes the visualization into a SerializedObject
        /// </summary>
        /// <returns>A SerializedObject which contains the relevant properties of the visualization</returns>
        public SerializedObject Serialize()
        {
            SerializedObject serializedObject = new SerializedObject();

            serializedObject.Strings.Add(titleKey, visualization.Title);

            if (visualization != null)
            {
                List <int> projectIds = new List <int>();
                List <int> ids        = new List <int>();

                for (int i = 0; i < visualization.ContentProvider.Issues.Count; i++)
                {
                    Issue issue = visualization.ContentProvider.Issues[i];

                    if (issue.Source == DataSource.REQUIREMENTS_BAZAAR)
                    {
                        projectIds.Add(-1);
                    }
                    else
                    {
                        projectIds.Add(issue.ProjectId);
                    }

                    ids.Add(issue.Id);
                }

                SerializedObject.AddList(projectIdKey, projectIds, serializedObject.Integers);
                SerializedObject.AddList(idsKey, ids, serializedObject.Integers);
            }
            else
            {
                Debug.LogWarning("No visualization found. Returning empty visualization content data.", gameObject);
            }

            return(serializedObject);
        }