// Path: library/src/main/java/com/thefinestartist/royal/RoyalDatabase.java
// public abstract class RoyalDatabase implements RealmMigration {
// 
//     public String getFileName() {
//         return "default";
//     }
// 
//     public boolean forCache() {
//         return false;
//     }
// 
//     public byte[] getEncryptionKey() {
//         return null;
//     }
// 
//     public int getVersion() {
//         return 0;
//     }
// 
//     public boolean shouldDeleteIfMigrationNeeded() {
//         return false;
//     }
// 
//     // TODO: change it like getModels
//     public List<Object> getModules() {
//         List<Object> modules = new ArrayList<>();
//         modules.add(Realm.getDefaultModule());
//         return modules;
//     }
// 
//     @Override
//     public long execute(Realm realm, long version) {
//         return getVersion();
//     }
// }
// 
// Path: library/src/androidTest/java/com/thefinestartist/royal/entities/Cat.java
// public class Cat extends RealmObject {
//     private String name;
//     private long age;
//     private float height;
//     private double weight;
//     private boolean hasTail;
//     private Date birthday;
//     private Owner owner;
//     private DogPrimaryKey scaredOfDog;
// 
//     public Owner getOwner() {
//         return owner;
//     }
// 
//     public void setOwner(Owner owner) {
//         this.owner = owner;
//     }
// 
//     public Date getBirthday() {
//         return birthday;
//     }
// 
//     public void setBirthday(Date birthday) {
//         this.birthday = birthday;
//     }
// 
//     public boolean isHasTail() {
//         return hasTail;
//     }
// 
//     public void setHasTail(boolean hasTail) {
//         this.hasTail = hasTail;
//     }
// 
// 
//     public double getWeight() {
//         return weight;
//     }
// 
//     public void setWeight(double weight) {
//         this.weight = weight;
//     }
// 
//     public float getHeight() {
//         return height;
//     }
// 
//     public void setHeight(float height) {
//         this.height = height;
//     }
// 
//     public long getAge() {
//         return age;
//     }
// 
//     public void setAge(long age) {
//         this.age = age;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public DogPrimaryKey getScaredOfDog() {
//         return scaredOfDog;
//     }
// 
//     public void setScaredOfDog(DogPrimaryKey scaredOfDog) {
//         this.scaredOfDog = scaredOfDog;
//     }
// }
// 
// Path: library/src/androidTest/java/com/thefinestartist/royal/entities/Dog.java
// public class Dog extends RealmObject {
// 
//     @Index
//     private String name;
//     private long age;
//     private float height;
//     private double weight;
//     private boolean hasTail;
//     private Date birthday;
//     private Owner owner;
// 
//     public Dog() {
//     }
// 
//     public Dog(String name) {
//         this.name = name;
//     }
// 
//     public Owner getOwner() {
//         return owner;
//     }
// 
//     public void setOwner(Owner owner) {
//         this.owner = owner;
//     }
// 
//     public Date getBirthday() {
//         return birthday;
//     }
// 
//     public void setBirthday(Date birthday) {
//         this.birthday = birthday;
//     }
// 
//     public boolean isHasTail() {
//         return hasTail;
//     }
// 
//     public void setHasTail(boolean hasTail) {
//         this.hasTail = hasTail;
//     }
// 
//     public double getWeight() {
//         return weight;
//     }
// 
//     public void setWeight(double weight) {
//         this.weight = weight;
//     }
// 
//     public float getHeight() {
//         return height;
//     }
// 
//     public void setHeight(float height) {
//         this.height = height;
//     }
// 
//     public long getAge() {
//         return age;
//     }
// 
//     public void setAge(long age) {
//         this.age = age;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public static String getStaticName(Dog dog) {
//         return dog.name;
//     }
// }
// 
// Path: library/src/androidTest/java/com/thefinestartist/royal/entities/Owner.java
// public class Owner extends RealmObject {
//     private String name;
//     private RealmList<Dog> dogs;
//     private Cat cat;
// 
//     public Cat getCat() {
//         return cat;
//     }
// 
//     public void setCat(Cat cat) {
//         this.cat = cat;
//     }
// 
//     public RealmList<Dog> getDogs() {
//         return dogs;
//     }
// 
//     public void setDogs(RealmList<Dog> dogs) {
//         this.dogs = dogs;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// }


import com.thefinestartist.royal.RoyalDatabase;
import com.thefinestartist.royal.entities.Cat;
import com.thefinestartist.royal.entities.Dog;
import com.thefinestartist.royal.entities.Owner;
import java.util.HashSet;
import java.util.Set;
import io.realm.Realm;
import io.realm.annotations.RealmModule;
package com.thefinestartist.royal.databases;




/**
 * Created by TheFinestArtist on 7/12/15.
 */
public class SecondaryDatabase extends RoyalDatabase {

    public String getFileName() {
        return "secondary";
    }

    public boolean forCache() {
        return false;
    }

    public byte[] getEncryptionKey() {
        return null;
    }

    public int getVersion() {
        return 0;
    }

    public boolean shouldDeleteIfMigrationNeeded() {
        return false;
    }

    public Set<Object> getModules() {
        Set<Object> set = new HashSet<>();
        set.add(new SecondaryModule());
        return set;
    }

    @Override
    public long execute(Realm realm, long version) {
        return getVersion();
    }

// Path: library/src/main/java/com/thefinestartist/royal/RoyalDatabase.java
// public abstract class RoyalDatabase implements RealmMigration {
// 
//     public String getFileName() {
//         return "default";
//     }
// 
//     public boolean forCache() {
//         return false;
//     }
// 
//     public byte[] getEncryptionKey() {
//         return null;
//     }
// 
//     public int getVersion() {
//         return 0;
//     }
// 
//     public boolean shouldDeleteIfMigrationNeeded() {
//         return false;
//     }
// 
//     // TODO: change it like getModels
//     public List<Object> getModules() {
//         List<Object> modules = new ArrayList<>();
//         modules.add(Realm.getDefaultModule());
//         return modules;
//     }
// 
//     @Override
//     public long execute(Realm realm, long version) {
//         return getVersion();
//     }
// }
// 
// Path: library/src/androidTest/java/com/thefinestartist/royal/entities/Cat.java
// public class Cat extends RealmObject {
//     private String name;
//     private long age;
//     private float height;
//     private double weight;
//     private boolean hasTail;
//     private Date birthday;
//     private Owner owner;
//     private DogPrimaryKey scaredOfDog;
// 
//     public Owner getOwner() {
//         return owner;
//     }
// 
//     public void setOwner(Owner owner) {
//         this.owner = owner;
//     }
// 
//     public Date getBirthday() {
//         return birthday;
//     }
// 
//     public void setBirthday(Date birthday) {
//         this.birthday = birthday;
//     }
// 
//     public boolean isHasTail() {
//         return hasTail;
//     }
// 
//     public void setHasTail(boolean hasTail) {
//         this.hasTail = hasTail;
//     }
// 
// 
//     public double getWeight() {
//         return weight;
//     }
// 
//     public void setWeight(double weight) {
//         this.weight = weight;
//     }
// 
//     public float getHeight() {
//         return height;
//     }
// 
//     public void setHeight(float height) {
//         this.height = height;
//     }
// 
//     public long getAge() {
//         return age;
//     }
// 
//     public void setAge(long age) {
//         this.age = age;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public DogPrimaryKey getScaredOfDog() {
//         return scaredOfDog;
//     }
// 
//     public void setScaredOfDog(DogPrimaryKey scaredOfDog) {
//         this.scaredOfDog = scaredOfDog;
//     }
// }
// 
// Path: library/src/androidTest/java/com/thefinestartist/royal/entities/Dog.java
// public class Dog extends RealmObject {
// 
//     @Index
//     private String name;
//     private long age;
//     private float height;
//     private double weight;
//     private boolean hasTail;
//     private Date birthday;
//     private Owner owner;
// 
//     public Dog() {
//     }
// 
//     public Dog(String name) {
//         this.name = name;
//     }
// 
//     public Owner getOwner() {
//         return owner;
//     }
// 
//     public void setOwner(Owner owner) {
//         this.owner = owner;
//     }
// 
//     public Date getBirthday() {
//         return birthday;
//     }
// 
//     public void setBirthday(Date birthday) {
//         this.birthday = birthday;
//     }
// 
//     public boolean isHasTail() {
//         return hasTail;
//     }
// 
//     public void setHasTail(boolean hasTail) {
//         this.hasTail = hasTail;
//     }
// 
//     public double getWeight() {
//         return weight;
//     }
// 
//     public void setWeight(double weight) {
//         this.weight = weight;
//     }
// 
//     public float getHeight() {
//         return height;
//     }
// 
//     public void setHeight(float height) {
//         this.height = height;
//     }
// 
//     public long getAge() {
//         return age;
//     }
// 
//     public void setAge(long age) {
//         this.age = age;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public static String getStaticName(Dog dog) {
//         return dog.name;
//     }
// }
// 
// Path: library/src/androidTest/java/com/thefinestartist/royal/entities/Owner.java
// public class Owner extends RealmObject {
//     private String name;
//     private RealmList<Dog> dogs;
//     private Cat cat;
// 
//     public Cat getCat() {
//         return cat;
//     }
// 
//     public void setCat(Cat cat) {
//         this.cat = cat;
//     }
// 
//     public RealmList<Dog> getDogs() {
//         return dogs;
//     }
// 
//     public void setDogs(RealmList<Dog> dogs) {
//         this.dogs = dogs;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// }


// Path: library/src/androidTest/java/com/thefinestartist/royal/databases/SecondaryDatabase.java
import com.thefinestartist.royal.RoyalDatabase;
import com.thefinestartist.royal.entities.Cat;
import com.thefinestartist.royal.entities.Dog;
import com.thefinestartist.royal.entities.Owner;
import java.util.HashSet;
import java.util.Set;
import io.realm.Realm;
import io.realm.annotations.RealmModule;

package com.thefinestartist.royal.databases;




/**
 * Created by TheFinestArtist on 7/12/15.
 */
public class SecondaryDatabase extends RoyalDatabase {

    public String getFileName() {
        return "secondary";
    }

    public boolean forCache() {
        return false;
    }

    public byte[] getEncryptionKey() {
        return null;
    }

    public int getVersion() {
        return 0;
    }

    public boolean shouldDeleteIfMigrationNeeded() {
        return false;
    }

    public Set<Object> getModules() {
        Set<Object> set = new HashSet<>();
        set.add(new SecondaryModule());
        return set;
    }

    @Override
    public long execute(Realm realm, long version) {
        return getVersion();
    }

    @RealmModule(classes = {Dog.class, Cat.class, Owner.class})