001// Generated by delombok at Fri Oct 04 16:05:59 CEST 2024 002/* 003 * Copyright (c) 2010-2024 Mark Allen, Norbert Bartels. 004 * 005 * Permission is hereby granted, free of charge, to any person obtaining a copy 006 * of this software and associated documentation files (the "Software"), to deal 007 * in the Software without restriction, including without limitation the rights 008 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 009 * copies of the Software, and to permit persons to whom the Software is 010 * furnished to do so, subject to the following conditions: 011 * 012 * The above copyright notice and this permission notice shall be included in 013 * all copies or substantial portions of the Software. 014 * 015 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 016 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 017 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 018 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 019 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 020 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 021 * THE SOFTWARE. 022 */ 023package com.restfb.types; 024 025import java.util.Date; 026import com.restfb.Facebook; 027import com.restfb.types.features.HasCover; 028 029/** 030 * Represents the <a href="http://developers.facebook.com/docs/reference/api/group">Group Graph API type</a>. 031 * 032 * @author <a href="http://restfb.com">Mark Allen</a> 033 * @since 1.5 034 */ 035public class Group extends NamedFacebookType implements HasCover { 036 /** 037 * administrator 038 */ 039 @Facebook 040 private Boolean administrator; 041 /** 042 * Information about the group's cover photo. 043 * 044 */ 045 @Facebook 046 private CoverPhoto cover; 047 /** 048 * The email address to upload content to the group. 049 * <p> 050 * Only current members of the group can use this. 051 * </p> 052 * 053 */ 054 @Facebook 055 private String email; 056 /** 057 * An object containing the name and ID of the user who owns the group. 058 * 059 */ 060 @Facebook 061 private NamedFacebookType owner; 062 /** 063 * The group description. 064 * 065 */ 066 @Facebook 067 private String description; 068 /** 069 * The URL for the group's website. 070 * 071 */ 072 @Facebook 073 private String link; 074 /** 075 * The number of pending member requests. 076 * <p> 077 * If the token is for an administrator, this is the total number of outstanding requests. If the token is for a group 078 * member, this will return the number of friends who have requested membership and also use the same app that is 079 * making the request. 080 * </p> 081 * 082 */ 083 @Facebook("member_request_count") 084 private Long memberRequestCount; 085 /** 086 * The parent of this group, if it exists. 087 * 088 */ 089 @Facebook 090 private NamedFacebookType parent; 091 /** 092 * The location of this group, a structured address object. 093 * 094 */ 095 @Facebook 096 private Location venue; 097 /** 098 * The privacy setting of the group, either 'OPEN', 'CLOSED', or 'SECRET'. 099 * 100 */ 101 @Facebook 102 private String privacy; 103 /** 104 * unread count 105 */ 106 @Facebook 107 private Long unread; 108 /** 109 * The last time the group was updated. 110 * 111 */ 112 @Facebook("updated_time") 113 private Date updatedTime; 114 /** 115 * The URL of the group's icon 116 * 117 * @since 1.6.16 118 */ 119 @Facebook 120 private String icon; 121 private static final long serialVersionUID = 1L; 122 123 /** 124 * administrator 125 */ 126 @java.lang.SuppressWarnings("all") 127 public Boolean getAdministrator() { 128 return this.administrator; 129 } 130 131 /** 132 * administrator 133 */ 134 @java.lang.SuppressWarnings("all") 135 public void setAdministrator(final Boolean administrator) { 136 this.administrator = administrator; 137 } 138 139 /** 140 * Information about the group's cover photo. 141 * 142 * @return Information about the group's cover photo. 143 */ 144 @Override 145 @java.lang.SuppressWarnings("all") 146 public CoverPhoto getCover() { 147 return this.cover; 148 } 149 150 /** 151 * Information about the group's cover photo. 152 * 153 */ 154 @java.lang.SuppressWarnings("all") 155 public void setCover(final CoverPhoto cover) { 156 this.cover = cover; 157 } 158 159 /** 160 * The email address to upload content to the group. 161 * <p> 162 * Only current members of the group can use this. 163 * </p> 164 * 165 * @return The email address to upload content to the group. 166 */ 167 @java.lang.SuppressWarnings("all") 168 public String getEmail() { 169 return this.email; 170 } 171 172 /** 173 * The email address to upload content to the group. 174 * <p> 175 * Only current members of the group can use this. 176 * </p> 177 * 178 */ 179 @java.lang.SuppressWarnings("all") 180 public void setEmail(final String email) { 181 this.email = email; 182 } 183 184 /** 185 * An object containing the name and ID of the user who owns the group. 186 * 187 * @return An object containing the name and ID of the user who owns the group. 188 */ 189 @java.lang.SuppressWarnings("all") 190 public NamedFacebookType getOwner() { 191 return this.owner; 192 } 193 194 /** 195 * An object containing the name and ID of the user who owns the group. 196 * 197 */ 198 @java.lang.SuppressWarnings("all") 199 public void setOwner(final NamedFacebookType owner) { 200 this.owner = owner; 201 } 202 203 /** 204 * The group description. 205 * 206 * @return The group description. 207 */ 208 @java.lang.SuppressWarnings("all") 209 public String getDescription() { 210 return this.description; 211 } 212 213 /** 214 * The group description. 215 * 216 */ 217 @java.lang.SuppressWarnings("all") 218 public void setDescription(final String description) { 219 this.description = description; 220 } 221 222 /** 223 * The URL for the group's website. 224 * 225 * @return The URL for the group's website. 226 */ 227 @java.lang.SuppressWarnings("all") 228 public String getLink() { 229 return this.link; 230 } 231 232 /** 233 * The URL for the group's website. 234 * 235 */ 236 @java.lang.SuppressWarnings("all") 237 public void setLink(final String link) { 238 this.link = link; 239 } 240 241 /** 242 * The number of pending member requests. 243 * <p> 244 * If the token is for an administrator, this is the total number of outstanding requests. If the token is for a group 245 * member, this will return the number of friends who have requested membership and also use the same app that is 246 * making the request. 247 * </p> 248 * 249 * @return The number of pending member requests 250 */ 251 @java.lang.SuppressWarnings("all") 252 public Long getMemberRequestCount() { 253 return this.memberRequestCount; 254 } 255 256 /** 257 * The number of pending member requests. 258 * <p> 259 * If the token is for an administrator, this is the total number of outstanding requests. If the token is for a group 260 * member, this will return the number of friends who have requested membership and also use the same app that is 261 * making the request. 262 * </p> 263 * 264 */ 265 @java.lang.SuppressWarnings("all") 266 public void setMemberRequestCount(final Long memberRequestCount) { 267 this.memberRequestCount = memberRequestCount; 268 } 269 270 /** 271 * The parent of this group, if it exists. 272 * 273 * @return The parent of this group, if it exists 274 */ 275 @java.lang.SuppressWarnings("all") 276 public NamedFacebookType getParent() { 277 return this.parent; 278 } 279 280 /** 281 * The parent of this group, if it exists. 282 * 283 */ 284 @java.lang.SuppressWarnings("all") 285 public void setParent(final NamedFacebookType parent) { 286 this.parent = parent; 287 } 288 289 /** 290 * The location of this group, a structured address object. 291 * 292 * @return The location of this group, a structured address object. 293 */ 294 @java.lang.SuppressWarnings("all") 295 public Location getVenue() { 296 return this.venue; 297 } 298 299 /** 300 * The location of this group, a structured address object. 301 * 302 */ 303 @java.lang.SuppressWarnings("all") 304 public void setVenue(final Location venue) { 305 this.venue = venue; 306 } 307 308 /** 309 * The privacy setting of the group, either 'OPEN', 'CLOSED', or 'SECRET'. 310 * 311 * @return The privacy setting of the group, either 'OPEN', 'CLOSED', or 'SECRET'. 312 */ 313 @java.lang.SuppressWarnings("all") 314 public String getPrivacy() { 315 return this.privacy; 316 } 317 318 /** 319 * The privacy setting of the group, either 'OPEN', 'CLOSED', or 'SECRET'. 320 * 321 */ 322 @java.lang.SuppressWarnings("all") 323 public void setPrivacy(final String privacy) { 324 this.privacy = privacy; 325 } 326 327 /** 328 * unread count 329 */ 330 @java.lang.SuppressWarnings("all") 331 public Long getUnread() { 332 return this.unread; 333 } 334 335 /** 336 * unread count 337 */ 338 @java.lang.SuppressWarnings("all") 339 public void setUnread(final Long unread) { 340 this.unread = unread; 341 } 342 343 /** 344 * The last time the group was updated. 345 * 346 * @return The last time the group was updated. 347 */ 348 @java.lang.SuppressWarnings("all") 349 public Date getUpdatedTime() { 350 return this.updatedTime; 351 } 352 353 /** 354 * The last time the group was updated. 355 * 356 */ 357 @java.lang.SuppressWarnings("all") 358 public void setUpdatedTime(final Date updatedTime) { 359 this.updatedTime = updatedTime; 360 } 361 362 /** 363 * The URL of the group's icon 364 * 365 * @return The group's icon url 366 * @since 1.6.16 367 */ 368 @java.lang.SuppressWarnings("all") 369 public String getIcon() { 370 return this.icon; 371 } 372 373 /** 374 * The URL of the group's icon 375 * 376 * @since 1.6.16 377 */ 378 @java.lang.SuppressWarnings("all") 379 public void setIcon(final String icon) { 380 this.icon = icon; 381 } 382}