package com.kfzs.duanduan.datashare.provider.session;

// @formatter:off
import com.kfzs.duanduan.datashare.provider.base.BaseModel;

import java.util.Date;

import android.support.annotation.NonNull;
import android.support.annotation.Nullable;

/**
 * A session info which is part of a team.
 */
@SuppressWarnings({"WeakerAccess", "unused"})
public interface SessionModel extends BaseModel {

    /**
     * Primary key.
     */
    long getId();

    /**
     * account of this session. For instance, John.
     * Cannot be {@code null}.
     */
    @NonNull
    String getAccount();

    /**
     * open_id of this session. For instance, John.
     * Can be {@code null}.
     */
    @Nullable
    String getOpenId();

    /**
     * update time of this session.
     */
    long getUpdateTime();

    /**
     * token of this session.
     * Can be {@code null}.
     */
    @Nullable
    String getToken();

    /**
     * uid at user of this session.
     * Can be {@code null}.
     */
    @Nullable
    Integer getUid();

    /**
     * data hash save of this session.
     * Can be {@code null}.
     */
    @Nullable
    Integer getHash();
}
