+ private SignalServiceGroupContext getGroupContext(SignalServiceContent content) {
+ if (content == null) {
+ return null;
+ }
+
+ if (content.getDataMessage().isPresent()) {
+ var message = content.getDataMessage().get();
+ if (message.getGroupContext().isPresent()) {
+ return message.getGroupContext().get();
+ }
+ }
+
+ if (content.getStoryMessage().isPresent()) {
+ var message = content.getStoryMessage().get();
+ if (message.getGroupContext().isPresent()) {
+ try {
+ return SignalServiceGroupContext.create(null, message.getGroupContext().get());
+ } catch (InvalidMessageException e) {
+ throw new AssertionError(e);
+ }
+ }
+ }
+
+ return null;
+ }
+