Thread:
 May be I don't understand some potential issues bu... 
 valenki-lite   17 Mar 2006, 08:34 

Comment
Prev. thread 
 Next thread
 
Prev. posting 
 Next posting
From: valenki-lite (17 Mar 2006, 08:34) Replies: 0, Views: 24895
Subject: May be I don't understand some potential issues but...
public enum E {
 A,
 B;

 public final static int A_ID = 1;
 public final static int B_ID = 2;
 public final static int NONE_ID = 0;

 public int getId() {
  switch(this) {
   case A:
    return A_ID;
   case B:
    return B_ID;
   default:
    return NONE_ID;
  }  
 }

 public static int getNoneId() {
  return NONE_ID;
 } 

 public E getById(int id) {
  switch(id) {
   case A_ID:
    return A;
   case B_ID:
    return B;
   default:
    return null;
  }  
 }
}

public class C {
 private E e = E.A;
 private int eId = e.getId();

 public E getE() {
  fixE();
  return e;
 }
 public void setE(E e) {
  this.e = e;
  fixEId();
 }
 public int getEId() {
  fixEId();
  return eId;
 }
 public void setEId(int id) {
  eId = id;
  fixE();
 }

 private void fixE() {
  e = E.getById(eId);
 }
 private void fixEId() {
  if(e!=null) eId = e.getId();
  else eId = E.getNoneId();
 }
}
Prev. thread 
 Next thread
 
Prev. posting 
 Next posting
© Copyright 2006, Red Hat Middleware, LLC. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc. [Privacy Policy]