From 762a656653dd50592a453e02cf821c2fddf14669 Mon Sep 17 00:00:00 2001 From: Marjan Kalanaki <15894063+marjisound@users.noreply.github.com> Date: Fri, 26 Jun 2026 14:35:13 +0100 Subject: [PATCH] Add Competition atom type --- .../thrift/atoms/footballcompetition.thrift | 23 +++++++++++++++++++ thrift/src/main/thrift/contentatom.thrift | 5 +++- 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 thrift/src/main/thrift/atoms/footballcompetition.thrift diff --git a/thrift/src/main/thrift/atoms/footballcompetition.thrift b/thrift/src/main/thrift/atoms/footballcompetition.thrift new file mode 100644 index 0000000..478e4c0 --- /dev/null +++ b/thrift/src/main/thrift/atoms/footballcompetition.thrift @@ -0,0 +1,23 @@ +namespace * contentatom.footballcompetition +namespace java com.gu.contentatom.thrift.atom.footballcompetition +#@namespace scala com.gu.contentatom.thrift.atom.footballcompetition +#@namespace typescript _at_guardian.content_atom_model.footballcompetition + +enum FootballCompetitionComponentType { + MATCHDAY = 0, +} + + +struct FootballCompetitionAtom { + 1: required string competitionId, + 2: required FootballCompetitionComponentType componentType, +// 3: optional FootballCompetitionComponentData data // This can be used for any specific data for future components, if needed +} + +// If we ever need to have specific data fields for competition components, +// we can define them here. +/* +union FootballCompetitionComponentData { + 1: MatchDayComponentData matchDayData +} +*/ \ No newline at end of file diff --git a/thrift/src/main/thrift/contentatom.thrift b/thrift/src/main/thrift/contentatom.thrift index e147f8a..b3bfc32 100644 --- a/thrift/src/main/thrift/contentatom.thrift +++ b/thrift/src/main/thrift/contentatom.thrift @@ -17,6 +17,7 @@ include "atoms/chart.thrift" include "atoms/audio.thrift" include "atoms/shared.thrift" include "atoms/emailsignup.thrift" +include "atoms/footballcompetition.thrift" typedef string ContentAtomID @@ -37,7 +38,8 @@ enum AtomType { COMMONSDIVISION = 13, CHART = 14, AUDIO = 15, - EMAILSIGNUP = 16 + EMAILSIGNUP = 16, + FOOTBALLCOMPETITION = 17 } union AtomData { @@ -58,6 +60,7 @@ union AtomData { 15: chart.ChartAtom chart 16: audio.AudioAtom audio 17: emailsignup.EmailSignUpAtom emailsignup + 18: footballcompetition.FootballCompetitionAtom footballCompetition } struct ContentChangeDetails {