Changeset 253f8ca1779aaed5336e611e7cc78c71fde30e60
- Timestamp:
- 08/05/07 14:25:36
(1 year ago)
- Author:
- Christopher Jung <bktheg@web.de>
- git-committer:
- Christopher Jung <bktheg@web.de> 1186316736 +0200
- git-parent:
[23e7f86cd7efb57d7586809a1db5aa31be3cfc6f]
- git-author:
- Christopher Jung <bktheg@web.de> 1186316736 +0200
- Message:
Forschungszentrum: Umstellung auf Hibernate
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
| r9e9a5b9 |
r253f8ca |
|
| 1 | 1 | CREATE TABLE `fz` ( |
|---|
| 2 | | `id` int(11) NOT NULL auto_increment, |
|---|
| 3 | 2 | `col` int(11) NOT NULL default '0', |
|---|
| 4 | 3 | `type` int(11) NOT NULL default '0', |
|---|
| 5 | 4 | `forschung` int(11) NOT NULL default '0', |
|---|
| 6 | 5 | `dauer` int(11) NOT NULL default '0', |
|---|
| 7 | | PRIMARY KEY (`id`), |
|---|
| 8 | | KEY `col` (`col`) |
|---|
| | 6 | PRIMARY KEY (`col`) |
|---|
| 9 | 7 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8; |
|---|
| 10 | 8 | |
|---|
| r23e7f86 |
r253f8ca |
|
| 367 | 367 | UPDATE buildings SET module='net.driftingsouls.ds2.server.bases.ForschungszentrumBuilding' WHERE module='net.driftingsouls.ds2.server.bases.Forschungszentrum'; |
|---|
| 368 | 368 | ]]></update> |
|---|
| | 369 | <update type="structure" datum="2007-08-05"><![CDATA[ |
|---|
| | 370 | ALTER TABLE `fz` DROP `id`; |
|---|
| | 371 | ALTER TABLE `fz` ADD PRIMARY KEY ( `col` ); |
|---|
| | 372 | ALTER TABLE `fz` DROP INDEX `col`; |
|---|
| | 373 | ]]></update> |
|---|
| 369 | 374 | </updates> |
|---|
| r23e7f86 |
r253f8ca |
|
| 20 | 20 | |
|---|
| 21 | 21 | import java.util.ArrayList; |
|---|
| | 22 | import java.util.Iterator; |
|---|
| 22 | 23 | import java.util.List; |
|---|
| 23 | 24 | |
|---|
| … | … | |
| 30 | 31 | import net.driftingsouls.ds2.server.config.Rassen; |
|---|
| 31 | 32 | import net.driftingsouls.ds2.server.entities.Forschung; |
|---|
| | 33 | import net.driftingsouls.ds2.server.entities.Forschungszentrum; |
|---|
| 32 | 34 | import net.driftingsouls.ds2.server.entities.User; |
|---|
| 33 | 35 | import net.driftingsouls.ds2.server.framework.Common; |
|---|
| … | … | |
| 35 | 37 | import net.driftingsouls.ds2.server.framework.Context; |
|---|
| 36 | 38 | import net.driftingsouls.ds2.server.framework.ContextMap; |
|---|
| 37 | | import net.driftingsouls.ds2.server.framework.db.Database; |
|---|
| 38 | | import net.driftingsouls.ds2.server.framework.db.SQLQuery; |
|---|
| 39 | | import net.driftingsouls.ds2.server.framework.db.SQLResultRow; |
|---|
| 40 | 39 | import net.driftingsouls.ds2.server.framework.templates.TemplateEngine; |
|---|
| 41 | 40 | |
|---|
| … | … | |
| 67 | 66 | throw new RuntimeException("No Context available"); |
|---|
| 68 | 67 | } |
|---|
| 69 | | |
|---|
| 70 | | context.getDatabase().update("INSERT INTO fz VALUES(0,"+base.getID()+",1,0,0)"); |
|---|
| | 68 | org.hibernate.Session db = context.getDB(); |
|---|
| | 69 | |
|---|
| | 70 | Forschungszentrum fz = new Forschungszentrum(base); |
|---|
| | 71 | db.persist(fz); |
|---|
| 71 | 72 | } |
|---|
| 72 | 73 | |
|---|
| … | … | |
| 75 | 76 | super.cleanup(context, base); |
|---|
| 76 | 77 | |
|---|
| 77 | | context.getDatabase().update("DELETE FROM fz WHERE col="+base.getID()); |
|---|
| | 78 | org.hibernate.Session db = context.getDB(); |
|---|
| | 79 | db.createQuery("delete from Forschungszentrum where base=?") |
|---|
| | 80 | .setEntity(0, base) |
|---|
| | 81 | .executeUpdate(); |
|---|
| 78 | 82 | } |
|---|
| 79 | 83 | |
|---|
| … | … | |
| 90 | 94 | @Override |
|---|
| 91 | 95 | public boolean isActive(Base base, int status, int field) { |
|---|
| 92 | | Database db = ContextMap.getContext().getDatabase(); |
|---|
| 93 | | |
|---|
| 94 | | SQLResultRow forschungszentrum = db.first( "SELECT dauer FROM fz WHERE col=",base.getID()); |
|---|
| 95 | | if( !forschungszentrum.isEmpty() && (forschungszentrum.getInt("dauer") > 0) ) { |
|---|
| | 96 | org.hibernate.Session db = ContextMap.getContext().getDB(); |
|---|
| | 97 | |
|---|
| | 98 | Forschungszentrum fz = (Forschungszentrum)db.get(Forschungszentrum.class, base.getID()); |
|---|
| | 99 | if( (fz != null) && (fz.getDauer() > 0) ) { |
|---|
| 96 | 100 | return true; |
|---|
| 97 | 101 | } |
|---|
| 98 | | else if( forschungszentrum.isEmpty() ) { |
|---|
| | 102 | else if( fz == null ) { |
|---|
| 99 | 103 | LOG.warn("Forschungszentrum ohne fz-Eintrag auf Basis "+base.getID()+" gefunden"); |
|---|
| 100 | 104 | } |
|---|
| … | … | |
| 104 | 108 | @Override |
|---|
| 105 | 109 | public String echoShortcut(Context context, Base base, int field, int building) { |
|---|
| 106 | | Database db = context.getDatabase(); |
|---|
| | 110 | org.hibernate.Session db = context.getDB(); |
|---|
| 107 | 111 | |
|---|
| 108 | 112 | String sess = context.getSession(); |
|---|
| 109 | 113 | |
|---|
| 110 | 114 | StringBuilder result = new StringBuilder(100); |
|---|
| 111 | | SQLResultRow fz = db.first("SELECT id,dauer,forschung FROM fz WHERE col="+base.getID()); |
|---|
| 112 | | if( !fz.isEmpty() ) { |
|---|
| 113 | | if( fz.getInt("dauer") == 0 ) { |
|---|
| | 115 | Forschungszentrum fz = (Forschungszentrum)db.get(Forschungszentrum.class, base.getID()); |
|---|
| | 116 | if( fz != null ) { |
|---|
| | 117 | if( fz.getDauer() == 0 ) { |
|---|
| 114 | 118 | result.append("<a class=\"back\" href=\"./ds?module=building&sess="+sess+"&col="+base.getID()+"&field="+field+"\">[F]</a>"); |
|---|
| 115 | 119 | } |
|---|
| 116 | 120 | else { |
|---|
| 117 | 121 | StringBuilder popup = new StringBuilder(Common.tableBegin( 350, "left" ).replace("\"", "'") ); |
|---|
| 118 | | SQLResultRow forschung = db.first("SELECT name FROM forschungen WHERE id="+fz.getInt("forschung")); |
|---|
| 119 | | popup.append("<img align='left' border='0' src='"+Configuration.getSetting("URL")+"data/tech/"+fz.getInt("forschung")+".gif' alt='' />"); |
|---|
| 120 | | popup.append(forschung.getString("name")+"<br />"); |
|---|
| 121 | | popup.append("Dauer: noch <img src='"+Configuration.getSetting("URL")+"data/interface/time.gif' alt='noch ' />"+fz.getInt("dauer")+"<br />"); |
|---|
| | 122 | Forschung forschung = Forschung.getInstance(fz.getForschung()); |
|---|
| | 123 | popup.append("<img align='left' border='0' src='"+Configuration.getSetting("URL")+"data/tech/"+fz.getForschung()+".gif' alt='' />"); |
|---|
| | 124 | popup.append(forschung.getName()+"<br />"); |
|---|
| | 125 | popup.append("Dauer: noch <img src='"+Configuration.getSetting("URL")+"data/interface/time.gif' alt='noch ' />"+fz.getDauer()+"<br />"); |
|---|
| 122 | 126 | popup.append( Common.tableEnd().replace("\"", "'") ); |
|---|
| 123 | 127 | |
|---|
| … | … | |
| 126 | 130 | "onmouseover=\"return overlib('<span style=\\'font-size:13px\\'>"+StringEscapeUtils.escapeJavaScript(popup.toString())+"</span>',REF,'p"+base.getID()+"_"+field+"',REFY,22,NOJUSTY,TIMEOUT,0,DELAY,150,WIDTH,280,BGCLASS,'gfxtooltip',FGCLASS,'gfxtooltip',TEXTFONTCLASS,'gfxtooltip');\" " + |
|---|
| 127 | 131 | "onmouseout=\"return nd();\" " + |
|---|
| 128 | | "href=\"./ds?module=building&sess="+sess+"&col="+base.getID()+"&field="+field+"\">[F]<span style=\"font-weight:normal\">"+fz.getInt("dauer")+"</span></a>"); |
|---|
| | 132 | "href=\"./ds?module=building&sess="+sess+"&col="+base.getID()+"&field="+field+"\">[F]<span style=\"font-weight:normal\">"+fz.getDauer()+"</span></a>"); |
|---|
| 129 | 133 | } |
|---|
| 130 | 134 | } |
|---|
| … | … | |
| 135 | 139 | } |
|---|
| 136 | 140 | |
|---|
| 137 | | private void possibleResearch(Context context, StringBuilder echo, Base base, int field) { |
|---|
| 138 | | Database db = context.getDatabase(); |
|---|
| | 141 | private void possibleResearch(Context context, StringBuilder echo, Forschungszentrum fz, int field) { |
|---|
| | 142 | org.hibernate.Session db = context.getDB(); |
|---|
| 139 | 143 | String sess = context.getSession(); |
|---|
| 140 | 144 | |
|---|
| … | … | |
| 148 | 152 | echo.append("</tr>\n"); |
|---|
| 149 | 153 | |
|---|
| | 154 | Base base = fz.getBase(); |
|---|
| 150 | 155 | Cargo cargo = base.getCargo(); |
|---|
| 151 | 156 | |
|---|
| 152 | 157 | List<Integer> researches = new ArrayList<Integer>(); |
|---|
| 153 | | SQLQuery research = db.query("SELECT fz.forschung " + |
|---|
| 154 | | "FROM fz JOIN bases AS b ON fz.col=b.id " + |
|---|
| 155 | | "WHERE fz.forschung>0 AND b.owner=",user.getID()); |
|---|
| 156 | | while( research.next() ) { |
|---|
| 157 | | researches.add(research.getInt("forschung")); |
|---|
| 158 | | } |
|---|
| 159 | | research.free(); |
|---|
| | 158 | List researchList = db.createQuery("from Forschungszentrum " + |
|---|
| | 159 | "where forschung>0 and base.owner=?") |
|---|
| | 160 | .setEntity(0, user) |
|---|
| | 161 | .list(); |
|---|
| | 162 | for( Iterator iter=researchList.iterator(); iter.hasNext(); ) { |
|---|
| | 163 | Forschungszentrum aFz = (Forschungszentrum)iter.next(); |
|---|
| | 164 | |
|---|
| | 165 | researches.add(aFz.getForschung()); |
|---|
| | 166 | } |
|---|
| 160 | 167 | |
|---|
| 161 | 168 | boolean first = true; |
|---|
| … | … | |
| 229 | 236 | |
|---|
| 230 | 237 | private void alreadyResearched( Context context, StringBuilder echo ) { |
|---|
| 231 | | Database db = context.getDatabase(); |
|---|
| | 238 | org.hibernate.Session db = context.getDB(); |
|---|
| 232 | 239 | String sess = context.getSession(); |
|---|
| 233 | 240 | |
|---|
| … | … | |
| 237 | 244 | echo.append("<tr><td class=\"noBorderX\" align=\"left\">Bereits erforscht:</td></tr>\n"); |
|---|
| 238 | 245 | |
|---|
| 239 | | for( int i = 1; i < 100; i++ ) { |
|---|
| 240 | | if( user.hasResearched(i) ) { |
|---|
| 241 | | SQLResultRow tech = db.first("SELECT name FROM forschungen WHERE id=",i); |
|---|
| 242 | | if( tech.isEmpty() ) { |
|---|
| 243 | | continue; |
|---|
| 244 | | } |
|---|
| | 246 | final Iterator forschungIter = db.createQuery("from Forschung order by id").iterate(); |
|---|
| | 247 | while( forschungIter.hasNext() ) { |
|---|
| | 248 | Forschung tech = (Forschung)forschungIter.next(); |
|---|
| | 249 | |
|---|
| | 250 | if( user.hasResearched(tech.getID()) ) { |
|---|
| 245 | 251 | echo.append("<tr><td class=\"noBorderX\">\n"); |
|---|
| 246 | | echo.append("<a class=\"forschinfo\" href=\"./ds?module=forschinfo&sess="+sess+"&res="+i+"\">"+Common._plaintitle(tech.getString("name"))+"</a>"); |
|---|
| | 252 | echo.append("<a class=\"forschinfo\" href=\"./ds?module=forschinfo&sess="+sess+"&res="+tech.getID()+"\">"+Common._plaintitle(tech.getName())+"</a>"); |
|---|
| 247 | 253 | echo.append("</td></tr>\n"); |
|---|
| 248 | 254 | } |
|---|
| … | … | |
| 251 | 257 | } |
|---|
| 252 | 258 | |
|---|
| 253 | | private boolean currentResearch(Context context, StringBuilder echo, Base base, int field ) { |
|---|
| 254 | | Database db = context.getDatabase(); |
|---|
| 255 | | String sess = context.getSession(); |
|---|
| 256 | | |
|---|
| 257 | | SQLResultRow fz = db.first("SELECT fz.forschung,fz.dauer,f.name " + |
|---|
| 258 | | "FROM fz JOIN forschungen AS f ON fz.forschung=f.id " + |
|---|
| 259 | | "WHERE fz.col="+base.getID()); |
|---|
| 260 | | |
|---|
| 261 | | if( !fz.isEmpty() ) { |
|---|
| 262 | | echo.append("<img style=\"float:left;border:0px\" src=\""+Configuration.getSetting("URL")+"data/tech/"+fz.getInt("forschung")+".gif\" alt=\"\" />"); |
|---|
| 263 | | echo.append("Erforscht: <a class=\"forschinfo\" href=\"./ds?module=forschinfo&sess="+sess+"&res="+fz.getInt("forschung")+"\">"+Common._plaintitle(fz.getString("name"))+"</a>\n"); |
|---|
| 264 | | echo.append("[<a class=\"error\" href=\"./ds?module=building&sess="+sess+"&col="+base.getID()+"&field="+field+"&kill=yes\">x</a>]<br />\n"); |
|---|
| 265 | | echo.append("Dauer: noch <img style=\"vertical-align:middle\" src=\""+Configuration.getSetting("URL")+"data/interface/time.gif\" alt=\"\" />"+fz.getInt("dauer")+" Runden\n"); |
|---|
| | 259 | private boolean currentResearch(Context context, StringBuilder echo, Forschungszentrum fz, int field ) { |
|---|
| | 260 | String sess = context.getSession(); |
|---|
| | 261 | |
|---|
| | 262 | Forschung tech = Forschung.getInstance(fz.getForschung()); |
|---|
| | 263 | if( tech != null ) { |
|---|
| | 264 | echo.append("<img style=\"float:left;border:0px\" src=\""+Configuration.getSetting("URL")+"data/tech/"+tech.getID()+".gif\" alt=\"\" />"); |
|---|
| | 265 | echo.append("Erforscht: <a class=\"forschinfo\" href=\"./ds?module=forschinfo&sess="+sess+"&res="+tech.getID()+"\">"+Common._plaintitle(tech.getName())+"</a>\n"); |
|---|
| | 266 | echo.append("[<a class=\"error\" href=\"./ds?module=building&sess="+sess+"&col="+fz.getBase().getID()+"&field="+field+"&kill=yes\">x</a>]<br />\n"); |
|---|
| | 267 | echo.append("Dauer: noch <img style=\"vertical-align:middle\" src=\""+Configuration.getSetting("URL")+"data/interface/time.gif\" alt=\"\" />"+fz.getDauer()+" Runden\n"); |
|---|
| 266 | 268 | echo.append("<br /><br />\n"); |
|---|
| 267 | 269 | return true; |
|---|
| … | … | |
| 270 | 272 | } |
|---|
| 271 | 273 | |
|---|
| 272 | | private void killResearch(Context context, StringBuilder echo, Base base, int field, String conf) { |
|---|
| 273 | | Database db = context.getDatabase(); |
|---|
| | 274 | private void killResearch(Context context, StringBuilder echo, Forschungszentrum fz, int field, String conf) { |
|---|
| 274 | 275 | String sess = context.getSession(); |
|---|
| 275 | 276 | |
|---|
| … | … | |
| 278 | 279 | echo.append("Wollen sie die Forschung wirklich abbrechen?<br />\n"); |
|---|
| 279 | 280 | echo.append("Achtung: Es erfolgt keine Rückerstattung der Resourcen!<br /><br />\n"); |
|---|
| 280 | | echo.append("<a class=\"error\" href=\"./ds?module=building&sess="+sess+"&col="+base.getID()+"&field="+field+"&kill=yes&conf=ok\">Forschung abbrechen</a><br />\n"); |
|---|
| | 281 | echo.append("<a class=\"error\" href=\"./ds?module=building&sess="+sess+"&col="+fz.getBase().getID()+"&field="+field+"&kill=yes&conf=ok\">Forschung abbrechen</a><br />\n"); |
|---|
| 281 | 282 | echo.append("</div>\n"); |
|---|
| 282 | 283 | return; |
|---|
| 283 | 284 | } |
|---|
| 284 | | db.update("UPDATE fz SET forschung=0,dauer=0 WHERE col=",base.getID()); |
|---|
| | 285 | |
|---|
| | 286 | fz.setForschung(0); |
|---|
| | 287 | fz.setDauer(0); |
|---|
| | 288 | |
|---|
| 285 | 289 | echo.append("<div style=\"text-align:center;color:red;font-weight:bold\">\n"); |
|---|
| 286 | 290 | echo.append("Forschung abgebrochen<br />\n"); |
|---|
| … | … | |
| 288 | 292 | } |
|---|
| 289 | 293 | |
|---|
| 290 | | private void doResearch(Context context, StringBuilder echo, int researchid, Base base, int field, String conf) { |
|---|
| 291 | | Database db = context.getDatabase(); |
|---|
| | 294 | private void doResearch(Context context, StringBuilder echo, Forschungszentrum fz, int researchid, int field, String conf) { |
|---|
| 292 | 295 | String sess = context.getSession(); |
|---|
| 293 | 296 | User user = (User)context.getActiveUser(); |
|---|
| 294 | | |
|---|
| 295 | | SQLResultRow fz = db.first("SELECT forschung,dauer FROM fz WHERE col="+base.getID()); |
|---|
| 296 | | |
|---|
| | 297 | |
|---|
| | 298 | Base base = fz.getBase(); |
|---|
| | 299 | |
|---|
| 297 | 300 | Forschung tech = Forschung.getInstance(researchid); |
|---|
| 298 | 301 | boolean ok = true; |
|---|
| … | … | |
| 324 | 327 | |
|---|
| 325 | 328 | // Wird bereits im Forschungszentrum geforscht? |
|---|
| 326 | | if( fz.getInt("forschung") != 0 ) { |
|---|
| | 329 | if( fz.getForschung() != 0 ) { |
|---|
| 327 | 330 | ok = false; |
|---|
| 328 | 331 | } |
|---|
| … | … | |
| 342 | 345 | |
|---|
| 343 | 346 | // Alles bis hierhin ok -> nun zu den Resourcen! |
|---|
| 344 | | Cargo cargo = base.getCargo(); |
|---|
| | 347 | Cargo cargo = new Cargo(base.getCargo()); |
|---|
| 345 | 348 | ok = true; |
|---|
| 346 | 349 | |
|---|
| … | … | |
| 360 | 363 | echo.append("</div>\n"); |
|---|
| 361 | 364 | |
|---|
| 362 | | db.tBegin(); |
|---|
| 363 | | db.tUpdate(1,"UPDATE fz SET forschung=",researchid,",dauer=",tech.getTime()," WHERE col="+base.getID()+" AND forschung=0 AND dauer=0"); |
|---|
| 364 | | db.tUpdate(1,"UPDATE bases SET cargo='",cargo.save(),"' WHERE id="+base.getID()+" AND cargo='",cargo.save(true),"'"); |
|---|
| | 365 | fz.setForschung(researchid); |
|---|
| | 366 | fz.setDauer(tech.getTime()); |
|---|
| 365 | 367 | base.setCargo(cargo); |
|---|
| 366 | | |
|---|
| 367 | | if( !db.tCommit() ) { |
|---|
| 368 | | context.addError("Beim Starten der Forschung ist ein Fehler aufgetreten. Bitte versuchen sie es später erneut"); |
|---|
| 369 | | } |
|---|
| 370 | 368 | } |
|---|
| 371 | 369 | } |
|---|
| … | … | |
| 373 | 371 | @Override |
|---|
| 374 | 372 | public String output(Context context, TemplateEngine t, Base base, int field, int building) { |
|---|
| 375 | | Database db = context.getDatabase(); |
|---|
| | 373 | org.hibernate.Session db = context.getDB(); |
|---|
| 376 | 374 | |
|---|
| 377 | 375 | String sess = context.getSession(); |
|---|
| … | … | |
| 387 | 385 | StringBuilder echo = new StringBuilder(2000); |
|---|
| 388 | 386 | |
|---|
| 389 | | SQLResultRow fz = db.first("SELECT id FROM fz WHERE col="+base.getID()); |
|---|
| 390 | | if( fz.isEmpty() ) { |
|---|
| | 387 | Forschungszentrum fz = (Forschungszentrum)db.get(Forschungszentrum.class, base.getID()); |
|---|
| | 388 | if( fz == null ) { |
|---|
| 391 | 389 | echo.append("<span style=\"color:red\">Fehler: Dieses Forschungszentrum hat keinen Datenbank-Eintrag</span>\n"); |
|---|
| 392 | 390 | return echo.toString(); |
|---|
| … | … | |
| 416 | 414 | if( (kill.length() != 0) || (research != 0) ) { |
|---|
| 417 | 415 | if( kill.length() != 0 ) { |
|---|
| 418 | | killResearch( context, echo, base, field, confirm); |
|---|
| | 416 | killResearch( context, echo, fz, field, confirm); |
|---|
| 419 | 417 | } |
|---|
| 420 | 418 | if( research != 0 ) { |
|---|
| 421 | | doResearch( context, echo, research, base, field, confirm ); |
|---|
| | 419 | doResearch( context, echo, fz, research, field, confirm ); |
|---|
| 422 | 420 | } |
|---|
| 423 | 421 | } |
|---|
| 424 | 422 | else if( show.equals("newres") ) { |
|---|
| 425 | | if( !currentResearch( context, echo, base, field ) ) { |
|---|
| 426 | | possibleResearch( context, echo, base, field ); |
|---|
| | 423 | if( !currentResearch( context, echo, fz, field ) ) { |
|---|
| | 424 | possibleResearch( context, echo, fz, field ); |
|---|
| 427 | 425 | } |
|---|
| 428 | 426 | } |
|---|
| re3938f6 |
r253f8ca |
|
| 21 | 21 | import javax.persistence.Entity; |
|---|
| 22 | 22 | import javax.persistence.FetchType; |
|---|
| 23 | | import javax.persistence.GeneratedValue; |
|---|
| 24 | 23 | import javax.persistence.Id; |
|---|
| 25 | | import javax.persistence.JoinColumn; |
|---|
| 26 | | import javax.persistence.ManyToOne; |
|---|
| | 24 | import javax.persistence.OneToOne; |
|---|
| | 25 | import javax.persistence.PrimaryKeyJoinColumn; |
|---|
| 27 | 26 | import javax.persistence.Table; |
|---|
| 28 | 27 | |
|---|
| … | … | |
| 37 | 36 | @Table(name="fz") |
|---|
| 38 | 37 | public class Forschungszentrum { |
|---|
| 39 | | @Id @GeneratedValue |
|---|
| 40 | | private int id; |
|---|
| 41 | | @ManyToOne(fetch=FetchType.LAZY) |
|---|
| 42 | | @JoinColumn(name="col") |
|---|
| | 38 | @Id |
|---|
| | 39 | private int col; |
|---|
| | 40 | @OneToOne(fetch=FetchType.LAZY) |
|---|
| | 41 | @PrimaryKeyJoinColumn |
|---|
| 43 | 42 | private Base base; |
|---|
| 44 | 43 | private int type; |
|---|
| … | … | |
| 75 | 74 | */ |
|---|
| 76 | 75 | public void setBase(Base base) { |
|---|
| | 76 | this.col = base.getID(); |
|---|
| 77 | 77 | this.base = base; |
|---|
| 78 | 78 | } |
|---|
| … | … | |
| 127 | 127 | |
|---|
| 128 | 128 | /** |
|---|
| 129 | | * Gibt die ID des Forschungszentrums zurueck |
|---|
| 130 | | * @return Die ID |
|---|
| | 129 | * Gibt die ID der Basis zurueck, auf der das Forschungszentrum steht |
|---|
| | 130 | * @return Die ID Der Basis |
|---|
| 131 | 131 | */ |
|---|
| 132 | | public int getId() { |
|---|
| 133 | | return id; |
|---|
| | 132 | public int getBaseId() { |
|---|
| | 133 | return col; |
|---|
| 134 | 134 | } |
|---|
| 135 | 135 | } |
|---|