Method return type

Posted by sarah xia on Stack Overflow See other posts from Stack Overflow or by sarah xia
Published on 2010-03-22T23:19:32Z Indexed on 2010/03/22 23:21 UTC
Read the original article Hit count: 336

Filed under:
|

Hi,

In my company, a system is designed to have 3 layers. Layer1 is responsible for business logic handling. Layer3 is calling back end systems. Layer2 sits between the two layers so that layer1 doesn't need to know about the back end systems. To replay information from layer3, layer2 needs to define interface to layer1.

For example, layer1 wants to check if a PIN from user is correct. It calls layer2 checkPin() method and then layer2 calls the relevant back end system. The checkPin() results could be: correctPin, inCorrectPin and internalError. At the moment, we defined the return type 'int'. So if layer2 returns 0, it means correctPin; if 1 is returned, it means inCorrectPin; if 9 is returned it means internalError.

It works. However I feel a bit uneasy about this approach. Are there better ways to do it? For example define an enum CheckPinResult{CORRECT_PIN,INCORRECT_PIN,INTERNAL_ERROR}, and return CheckPinResult type?

Thanks, Sarah

© Stack Overflow or respective owner

Related posts about java

Related posts about int