| package entities |
| |
| import ( |
| "repodiff/constants" |
| ) |
| |
| type Project struct { |
| URL string `json:"url"` |
| Branch string `json:"branch"` |
| } |
| |
| type DiffTarget struct { |
| Upstream Project `json:"upstream"` |
| Downstream Project `json:"downstream"` |
| } |
| |
| type ApplicationConfig struct { |
| OutputDirectory string `json:"output_directory"` |
| AndroidProjectDir string `json:"android_project_dir"` |
| DiffScript string `json:"diff_script"` |
| DiffTargets []DiffTarget `json:"diff_targets"` |
| Port int `json:"port"` |
| CommonUpstream Project `json:"common_upstream"` |
| } |
| |
| type DiffRow struct { |
| Date string |
| DownstreamProject string |
| UpstreamProject string |
| DiffStatus int |
| FilesChanged int |
| LineInsertions int |
| LineDeletions int |
| LineChanges int |
| CommitsNotUpstreamed int |
| DBInsertTimestamp int64 |
| } |
| |
| type AnalyzedDiffRow struct { |
| DiffRow |
| Type constants.ProjectType |
| } |
| |
| type CommitRow struct { |
| Date string |
| Commit string |
| DownstreamProject string |
| Author string |
| Subject string |
| } |
| |
| type AnalyzedCommitRow struct { |
| CommitRow |
| Type constants.ProjectType |
| } |
| |
| type MappedDiffTarget struct { |
| UpstreamTarget int16 |
| DownstreamTarget int16 |
| } |
| |
| type StatusMessage struct { |
| JobStatus string |
| Meta string |
| } |
| |
| type remote struct { |
| Text string `xml:",chardata"` |
| Fetch string `xml:"fetch,attr"` |
| Name string `xml:"name,attr"` |
| Review string `xml:"review,attr"` |
| } |
| |
| // "default" is the actual corresponding name in the XML tree but is also a reserved keyword in Golang; renamed as "defaultXML" |
| type defaultXML struct { |
| Text string `xml:",chardata"` |
| DestBranch string `xml:"dest-branch,attr"` |
| Remote string `xml:"remote,attr"` |
| Revision string `xml:"revision,attr"` |
| SyncJ string `xml:"sync-j,attr"` |
| } |
| |
| type manifestServer struct { |
| Text string `xml:",chardata"` |
| URL string `xml:"url,attr"` |
| } |
| |
| type copyFile struct { |
| Text string `xml:",chardata"` |
| Dest string `xml:"dest,attr"` |
| Src string `xml:"src,attr"` |
| } |
| |
| type linkFile struct { |
| Text string `xml:",chardata"` |
| Dest string `xml:"dest,attr"` |
| Src string `xml:"src,attr"` |
| } |
| |
| type ManifestProject struct { |
| Text string `xml:",chardata"` |
| Groups string `xml:"groups,attr"` |
| Name string `xml:"name,attr"` |
| CloneDepth string `xml:"clone-depth,attr"` |
| Path string `xml:"path,attr"` |
| Copyfile copyFile `xml:"copyfile"` |
| Linkfile []linkFile `xml:"linkfile"` |
| } |
| |
| type repoHooks struct { |
| Text string `xml:",chardata"` |
| EnabledList string `xml:"enabled-list,attr"` |
| InProject string `xml:"in-project,attr"` |
| } |
| |
| type ManifestFile struct { |
| Text string `xml:",chardata"` |
| Remote remote `xml:"remote"` |
| Default defaultXML `xml:"default"` |
| ManifestServer manifestServer `xml:"manifest-server"` |
| Projects []ManifestProject `xml:"project"` |
| RepoHooks repoHooks `xml:"repo-hooks"` |
| } |
| |
| type ManifestFileGroup struct { |
| Common ManifestFile |
| Upstream ManifestFile |
| Downstream ManifestFile |
| } |
| |
| type RepoTimestamp int64 |