private void ParseMetadata(string metadataString) { string[] metadataTokens = metadataString.Split(METADATA_SEPARATOR); foreach (string metadataToken in metadataTokens) { if (SiteDimensionsMetadata.IsQualified(metadataToken)) { siteDimensionsMetadata = new SiteDimensionsMetadata(metadataToken); } else if (LandmarkMetadata.IsQualified(metadataToken)) { landmarkMetadataList.Add(new LandmarkMetadata(metadataToken)); } else if (TrafficMetadata.IsQualified(metadataToken)) { trafficMetadataList.Add(new TrafficMetadata(metadataToken)); } else if (RoadMetadata.IsQualified(metadataToken)) { roadMetadataList.Add(new RoadMetadata(metadataToken)); } else { // Unknown metadata type Debug.Log("Error: unknown metadata type"); } } }