1. Java / Говнокод #10918

    +95

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    // same as Callable but without exception
    public interface  Executable<T>
    {
     	public T call();
    }
    /*В другом классе: методы для конверсии туда-сюда */
    	public Callable<T> toCallable(final Executable<T> ex){
     		return new Callable<T>(){
    			public T call() throws Exception{
    				return ex.call();
    			}
    		};
    	}
    	public Executable<T> toExecutable(final Callable<T> c)
     	{
     		return new Executable<T>(){
    			public T call(){
    		 		try{
    					return c.call();
    				}catch (Exception e){
    					throw new RuntimeException(e);
    				}
    			}
    		};
    	}

    3.14159265, 11 Июня 2012

    Комментарии (82)
  2. Java / Говнокод #10917

    +98

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    public interface FunctionWithException<F,T,E extends Throwable>
    {
    	public T call(F f) throws E;
    }
    ......
    public interface Function<F,T> extends FunctionWithException<F,T,RuntimeException>
    {
    	public T call(F f) throws RuntimeException;
    }

    В этом сезоне в моде всё функциональное.

    3.14159265, 11 Июня 2012

    Комментарии (0)
  3. Java / Говнокод #10721

    +102

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    public void set...(...){
      ...
      throw INVALID_PARAM;
    }
    public void set...(...){
      ...
      throw INVALID_PARAM;
    }
    public void set...(...){
      ...
      throw INVALID_PARAM;
    }
    
    ...
    private final static Exception INVALID_PARAM=new RuntimeException("Incorrect value!");

    3.14159265, 08 Июня 2012

    Комментарии (70)
  4. Java / Говнокод #10628

    +125

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    // Handle Ctrl-1 ... Ctrl-9 keypresses
    if (!event.isSpecialKey() && event.isControlKey()) {
    	final int code = event.getKeyCode();
    	
    	if (code >= '1' && code <= '9') {
    		// Technically, the keyCode is not the ASCII code and should not
    		// be treated as such. Stupid JavaScript events. However, it
    		// *just so happens* that for number keys these codes match their
    		// ASCII codes. Luckily for us.

    someone, 08 Июня 2012

    Комментарии (3)
  5. Java / Говнокод #10615

    +75

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    protected Condition parseLogicNot(Element n)
    {
       for(Object element : n.elements())
          return new ConditionLogicNot(parseCond((Element) element));
    
       log.error("Empty <not> condition in " + getCurrentFileName());
       return null;
    }

    Закинем ка для каждого по Exception'у :)

    EvSpirit, 07 Июня 2012

    Комментарии (18)
  6. Java / Говнокод #10596

    +72

    1. 1
    2. 2
    Long count = ((Long) q.getSingleResult()).longValue();
    int pages = ((Long) (count / rowsPerPage)).intValue();

    конвертировали-конвертировали, и выконвертировали

    Lure Of Chaos, 06 Июня 2012

    Комментарии (3)
  7. Java / Говнокод #10588

    +72

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if (style == null || (style != null && !style.isEnabled())) {
        throw new IllegalStateException(); 
    }
    if (style != null) {
        do something . . .
    }

    mychka, 05 Июня 2012

    Комментарии (2)
  8. Java / Говнокод #10576

    +75

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    try {
        try{
            BasicFormatKeywordsReader keyRep = new BasicFormatKeywordsReader(new ExcelBook(fileName),keywordName,sheetName);
            keyRep.readKeywords(keyword);
        } catch (Throwable ex){
            throw new TestCaseException("Can't initialize flow",ex);
        }
        for(Executable executable:keyword.getChildren()) {
            executable.execute(getRequest());
        }
    } catch (TestCaseException ex) {
        throw ex;
    } catch (Throwable ex){
        throw new TestCaseException(ex);
    }

    Талантливо!

    nafania217518, 05 Июня 2012

    Комментарии (5)
  9. Java / Говнокод #10509

    +76

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    public enum Permission{
    	SUPERUSER,
    	MANAGER,
            USER;
    
    	public static Permission value(String name) {
    		return mapsValues.get(name);
    	}
    	
    	private final static Map<String, Permission> mapsValues;
    	static {
    		Map<String, Permission> map= new HashMap<String, Permission>();
    
    		Permission[] pp = values();
    		for (Permission p : pp)
    			map.put(p.name(), p);
    
    		mapsValues =  Collections.unmodifiableMap(map);
    	}
    	
    }

    xaoc, 31 Мая 2012

    Комментарии (10)
  10. Java / Говнокод #10480

    +111

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    // WARNING!
    // This has to be optional=true so that OpenJPA uses
    // LEFT JOIN instead of INNER JOIN. Otherwise, MySQL tries
    // using a temporary table (horrible for performance) and dies.
    @ManyToOne(optional = true)
    @NotNull
    private Font font;

    someone, 31 Мая 2012

    Комментарии (3)