// Path: app/src/main/java/com/tylersuehr/cleanarchitecture/data/models/Entity.java
// public abstract class Entity {
//     private Object id;
// 
// 
//     @Override
//     public boolean equals(Object obj) {
//         return (this == obj) || (obj instanceof Entity && ((Entity)obj).id.equals(id));
//     }
// 
//     @Override
//     public String toString() {
//         return "Entity {'" + id + "'}";
//     }
// 
//     public Object getId() {
//         return id;
//     }
// 
//     public void setId(Object id) {
//         this.id = id;
//     }
// }


import com.tylersuehr.cleanarchitecture.data.models.Entity;
import java.util.List;
package com.tylersuehr.cleanarchitecture.data.repositories;



/**
 * Copyright © 2017 Tyler Suehr
 *
 * @author Tyler Suehr
 * @version 1.0
 */
public interface Callbacks {
    /**
     * Defines an interface for handling an error callback.
     */
    interface IError {
        void onNotAvailable(Exception ex);
    }

    /**
     * Defines an interface for handling a single response callback.
     */
// Path: app/src/main/java/com/tylersuehr/cleanarchitecture/data/models/Entity.java
// public abstract class Entity {
//     private Object id;
// 
// 
//     @Override
//     public boolean equals(Object obj) {
//         return (this == obj) || (obj instanceof Entity && ((Entity)obj).id.equals(id));
//     }
// 
//     @Override
//     public String toString() {
//         return "Entity {'" + id + "'}";
//     }
// 
//     public Object getId() {
//         return id;
//     }
// 
//     public void setId(Object id) {
//         this.id = id;
//     }
// }


// Path: app/src/main/java/com/tylersuehr/cleanarchitecture/data/repositories/Callbacks.java
import com.tylersuehr.cleanarchitecture.data.models.Entity;
import java.util.List;

package com.tylersuehr.cleanarchitecture.data.repositories;



/**
 * Copyright © 2017 Tyler Suehr
 *
 * @author Tyler Suehr
 * @version 1.0
 */
public interface Callbacks {
    /**
     * Defines an interface for handling an error callback.
     */
    interface IError {
        void onNotAvailable(Exception ex);
    }

    /**
     * Defines an interface for handling a single response callback.
     */
    interface ISingle<T extends Entity> extends IError {