package be.neutrinet.ispng.vpn.ip;
import com.j256.ormlite.field.DatabaseField;
import com.j256.ormlite.table.DatabaseTable;
import org.apache.log4j.Logger;
import java.sql.SQLException;
import java.util.Optional;
/**
* Created by wannes on 11/15/14.
*/
@DatabaseTable(tableName = "subnets")
public class IPSubnet {
@DatabaseField(generatedId = true)
public long id;
@DatabaseField(canBeNull = false)
public String subnet;
@DatabaseField
public int prefix;
@DatabaseField
public boolean subAllocate;
@DatabaseField
public long parentId;
@DatabaseField(defaultValue = "6")
public int ipVersion;
public Optional<IPSubnet> parent() {
try {
IPSubnet ipSubnet = IPSubnets.dao.queryForId("" + parentId);
return Optional.of(ipSubnet);
} catch (SQLException ex) {
Logger.getLogger(getClass()).error("Failed to retrieve parent", ex);
}
return Optional.empty();
}
}