From 0ed5db9366541069ac4585c16d57138a9c4deac2 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 1 Oct 2014 16:53:55 +0200 Subject: Adapt to changed DB scheme (eppn handling for multiple suffixes) --- .../org/openslx/imagemaster/db/DbSatellite.java | 42 +++++++++++++--------- 1 file changed, 25 insertions(+), 17 deletions(-) (limited to 'src/main/java/org/openslx/imagemaster/db/DbSatellite.java') diff --git a/src/main/java/org/openslx/imagemaster/db/DbSatellite.java b/src/main/java/org/openslx/imagemaster/db/DbSatellite.java index 65450ed..a1c9b1a 100644 --- a/src/main/java/org/openslx/imagemaster/db/DbSatellite.java +++ b/src/main/java/org/openslx/imagemaster/db/DbSatellite.java @@ -17,7 +17,7 @@ public class DbSatellite { private static final Logger LOG = Logger.getLogger( DbSatellite.class ); - private String organization, address, name, prefix, publickeyString; + private String organizationId, address, name, publickeyString; private PublicKey publickey = null; private static final KeyFactory keyFact; @@ -33,31 +33,44 @@ public class DbSatellite } // needs to be public in order to be found by MySQL - public DbSatellite( String organization, String address, String name, String prefix, String publickeyString ) + public DbSatellite( String organizationId, String address, String name, String prefix, String publickeyString ) { - this.organization = organization; + this.organizationId = organizationId; this.address = address; this.name = name; - this.prefix = prefix; this.publickeyString = publickeyString; } - public static DbSatellite fromOrganization( String organization ) + public static DbSatellite fromOrganizationId( String organizationId ) { return MySQL .findUniqueOrNull( DbSatellite.class, - "SELECT satellite.organization, satellite.address, satellite.name, satellite.prefix, satellite.publickey FROM satellite WHERE satellite.organization = ? LIMIT 1", - organization ); + "SELECT satellite.organizationid, satellite.address, satellite.name, satellite.publickey FROM satellite WHERE satellite.organizationid = ? LIMIT 1", + organizationId ); + } + + public static DbSatellite fromSuffix( String suffix ) + { + return MySQL + .findUniqueOrNull( + DbSatellite.class, + "SELECT satellite.organizationid, satellite.address, satellite.name, satellite.publickey FROM satellite" + + " INNER JOIN satellite_suffix USING (organizationid)" + + " WHERE satellite_suffix.suffix = ? LIMIT 1", + suffix ); } public static DbSatellite fromPrefix( String prefix ) { + /* return MySQL .findUniqueOrNull( DbSatellite.class, - "SELECT satellite.organization, satellite.address, satellite.name, satellite.prefix, satellite.publickey FROM satellite WHERE satellite.prefix = ? LIMIT 1", + "SELECT satellite.organization, satellite.address, satellite.name, satellite.publickey FROM satellite WHERE satellite.prefix = ? LIMIT 1", prefix ); + */ + return null; } public String getAddress() @@ -70,14 +83,9 @@ public class DbSatellite return name; } - public String getOrganization() - { - return organization; - } - - public String getPrefix() + public String getOrganizationId() { - return this.prefix; + return organizationId; } /** @@ -99,9 +107,9 @@ public class DbSatellite publickey = keyFact.generatePublic( keySpec ); } } catch ( InvalidKeySpecException e ) { - LOG.info( "PubKey of " + this.organization + " is not valid.", e ); + LOG.info( "PubKey of " + this.name + " is not valid.", e ); } catch ( NumberFormatException e ) { - LOG.info( "PubKey of " + this.organization + " is corrupted in database!", e ); + LOG.info( "PubKey of " + this.name + " is corrupted in database!", e ); } } return publickey; -- cgit v1.2.3-55-g7522