// Path: spring-social-yammer/src/main/java/org/springframework/social/yammer/api/Group.java
// public static class GroupStats{
// 	private final int updates;
// 	private final int members;
//        private final Date lastMessageAt;
//        private final long lastMessageId;
// 
// 	public GroupStats(int updates, int members, Date lastMessageAt, long lastMessageId) {
// 		this.updates = updates;
// 		this.members = members;
//            this.lastMessageAt = lastMessageAt;
//            this.lastMessageId = lastMessageId;
//        }
//    }
// 
// Path: spring-social-yammer/src/main/java/org/springframework/social/yammer/api/impl/YammerDateDeserializer.java
// public class YammerDateDeserializer extends JsonDeserializer<Date> {
// 
// 	//Example format: 2011/03/03 21:12:57 +0000
// 	public static final String DATE_FORMAT_MASK = "yyy/MM/dd HH:mm:ss Z";
// 	public static final Locale LOCALE = Locale.ENGLISH;
// 	
// 
// 	@Override
// 	public Date deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException {
//         try {
//             return createDateFormatter().parse(jp.getText());
//         } catch (ParseException e) {
//             return null;
//         }
// 	}
// 	
// 	SimpleDateFormat createDateFormatter(){
// 		return new SimpleDateFormat(DATE_FORMAT_MASK, LOCALE);		
// 	}
// 
// }


import java.util.Date;
import org.codehaus.jackson.annotate.JsonCreator;
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
import org.codehaus.jackson.annotate.JsonProperty;
import org.codehaus.jackson.map.annotate.JsonDeserialize;
import org.springframework.social.yammer.api.Group.GroupStats;
import org.springframework.social.yammer.api.impl.YammerDateDeserializer;
/*
 * Copyright 2011 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.springframework.social.yammer.api.impl.json;



/**
 * @author Morten Andersen-Gott
 *
 */
@JsonIgnoreProperties(ignoreUnknown=true)
abstract class GroupMixin {

	@JsonCreator
	GroupMixin(
			@JsonProperty("privacy")String privacy,
			@JsonProperty("web_url")String webUrl,
// Path: spring-social-yammer/src/main/java/org/springframework/social/yammer/api/Group.java
// public static class GroupStats{
// 	private final int updates;
// 	private final int members;
//        private final Date lastMessageAt;
//        private final long lastMessageId;
// 
// 	public GroupStats(int updates, int members, Date lastMessageAt, long lastMessageId) {
// 		this.updates = updates;
// 		this.members = members;
//            this.lastMessageAt = lastMessageAt;
//            this.lastMessageId = lastMessageId;
//        }
//    }
// 
// Path: spring-social-yammer/src/main/java/org/springframework/social/yammer/api/impl/YammerDateDeserializer.java
// public class YammerDateDeserializer extends JsonDeserializer<Date> {
// 
// 	//Example format: 2011/03/03 21:12:57 +0000
// 	public static final String DATE_FORMAT_MASK = "yyy/MM/dd HH:mm:ss Z";
// 	public static final Locale LOCALE = Locale.ENGLISH;
// 	
// 
// 	@Override
// 	public Date deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException {
//         try {
//             return createDateFormatter().parse(jp.getText());
//         } catch (ParseException e) {
//             return null;
//         }
// 	}
// 	
// 	SimpleDateFormat createDateFormatter(){
// 		return new SimpleDateFormat(DATE_FORMAT_MASK, LOCALE);		
// 	}
// 
// }


// Path: spring-social-yammer/src/main/java/org/springframework/social/yammer/api/impl/json/GroupMixin.java
import java.util.Date;
import org.codehaus.jackson.annotate.JsonCreator;
import org.codehaus.jackson.annotate.JsonIgnoreProperties;
import org.codehaus.jackson.annotate.JsonProperty;
import org.codehaus.jackson.map.annotate.JsonDeserialize;
import org.springframework.social.yammer.api.Group.GroupStats;
import org.springframework.social.yammer.api.impl.YammerDateDeserializer;

/*
 * Copyright 2011 the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package org.springframework.social.yammer.api.impl.json;



/**
 * @author Morten Andersen-Gott
 *
 */
@JsonIgnoreProperties(ignoreUnknown=true)
abstract class GroupMixin {

	@JsonCreator
	GroupMixin(
			@JsonProperty("privacy")String privacy,
			@JsonProperty("web_url")String webUrl,
			@JsonProperty("stats") GroupStats stats,