github.com/GeniusesGroup/libgo@v0.0.0-20220929090155-5ff932cb408e/protocol/detail.go (about) 1 /* For license and copyright information please see LEGAL file in repository */ 2 3 package protocol 4 5 type Details interface { 6 Details() []Detail 7 Detail(lang LanguageID) Detail 8 } 9 10 // Detail is some piece of information that write for humans to understand some thing 11 type Detail interface { 12 Language() LanguageID 13 // Domain return locale domain name that MediaType belongs to it. 14 // More user friendly domain name to show to users on screens. 15 Domain() string 16 // Summary return locale general summary text that gives the main points in a concise form. 17 // Usually it is one line text to shown in the '<app> help' output of service or notify errors to user. 18 Summary() string 19 // Overview return locale general text that gives the main ideas without explaining all the details. 20 // Usually it is multi line text to shown in the '<app> help <this-command>' output or expand error details in GUI screen. 21 Overview() string 22 // UserNote return locale note that user do when face this MediaType 23 // Description text that gives the main ideas with explaining all the details and purposes. 24 UserNote() string 25 // DevNote return locale technical advice for developers 26 // Description text that gives the main ideas with explaining all the details and purposes. 27 DevNote() string 28 // TAGS return locale MediaType tags to sort MediaType in groups for any purpose e.g. in GUI to help org manager to give service delegate authorization to staffs. 29 TAGS() []string 30 }