- 1
- 2
- 3
- 4
- 5
public List<ImportException> importFiles() {
Collection<ImportException> exceptions = new ArrayList<ImportException>();
/* весь метод exceptions ссылается на этот список */
return (List<ImportException>) exceptions;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+69
public List<ImportException> importFiles() {
Collection<ImportException> exceptions = new ArrayList<ImportException>();
/* весь метод exceptions ссылается на этот список */
return (List<ImportException>) exceptions;
}
Полиморфизм ёпт
+64
balance2N(nodeGet(0), nodeGet(0).getLine(0).getNodeConnectedWith(nodeGet(0)));
class Node {
private ArrayList<Line> children = new ArrayList<Line>();
public Line getLine (int index) {
return children.get(index);
}
}
class Line {
private Node[] parents = new Node[2];
public Node getNodeConnectedWith(Node nodeA) {
if (parents[0] == nodeA) {
return parents[1]; //return node another from this node (node on the other side)
} else { //if parents[1] == nodeA equals !(parents[0] == nodeA)
return parents[0];
}
}
}
Метод balance2N делает что-то с двумя нодами.
+76
public static boolean isNodePresent(String nodeName, String tree, boolean waitForNotNullCondition) {
return (waitForNotNullCondition) ? getTreeItemId(tree, nodeName) != null : getTreeItemId(tree, nodeName) == null;
}
+74
List<CurrentRegion> currentRegionsFromDb = impl
.getAll(CurrentRegion.class);
if (currentRegionsFromDb.size() != 1) {
throw new FillReportException();
}
CurrentRegion currentRegion = (CurrentRegion) currentRegionsFromDb
.toArray()[0];
массив головного мозга
+70
protected void writeCaptionForDoubleColumns(HSSFWorkbook wb,
HSSFSheet sheet, HSSFRow row, HSSFCellStyle fulBorderCalignFont14,
Type1 obj1, Type2 obj2,
Type3 obj3, Type4 obj4, Type5 obj5,
Type6 obj6, Type7 obj7,
boolean writeObj6, boolean writeObj5,
boolean isHorizontal, String formName, String formNameCode) {
writeCaptionForDoubleColumns(wb, sheet, row, fulBorderCalignFont14,
obj1, obj2, obj3, obj4, obj5, obj6,
obj7, writeObj6, writeObj5, isHorizontal, formName,
formNameCode, true, null);
}
protected void writeCaptionForDoubleColumns(HSSFWorkbook wb,
HSSFSheet sheet, HSSFRow row, HSSFCellStyle fulBorderCalignFont14,
Type1 obj1, Type2 obj2,
Type3 obj3, Type4 obj4, Type5 obj5,
Type6 obj6, Type7 obj7,
boolean writeObj6, boolean writeObj5,
boolean isHorizontal, String formName, String formNameCode,
boolean nameFormCaption) {
writeCaptionForDoubleColumns(wb, sheet, row, fulBorderCalignFont14,
obj1, obj2, obj3, obj4, obj5, obj6,
obj7, writeObj6, writeObj5, isHorizontal, formName,
formNameCode, nameFormCaption, null);
}
описание может быть только матерным
+72
@Entity
public class MyObject {
@Column
private int type;
@Id
private long id;
@Column
private String name;
// и ещё другие поля, а также геттеры-сеттеры для них, в общем, обычная сущность
}
// managed bean в jsp 1.2 (legacy проект)
public class MyList {
private List<MyObject> oList;
private SimpleDateFormat filterDateFormat;
public MyList() {
filterDateFormat = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
}
public List<MyObject> getMyList() {
if (oList == null) {
oList = DAO.getDAO().findAllMyObjects();
String name = ...; // берётся из формы
if (name != null && name != "") {
oList = getObjectsByName(name, oList);
}
Integer type = ...; // тоже берётся из формы
if (type != null) {
oList = getObjectsByType(type, oList);
}
// и здесь ещё четыре куска такого же говнокода для других свойств MyObject
}
return oList;
}
private List<MyObject> getObjectsByType(Integer type, List<MyObject> oList) {
List<MyObject> queriesByType = new ArrayList<MyObject>();
for (MyObject o : oList) {
if (o.getType() == type) {
queriesByType.add(o);
}
}
return queriesByType;
}
private List<MyObject> getObjectsByName(String name, List<MyObject> oList) {
List<MyObject> queriesByName = new ArrayList<MyObject>();
for (MyObject o : oList) {
if (o.getName() == name) {
queriesByName.add(o);
}
}
return queriesByName;
}
// и ещё четыре таких же говнометода для других свойств MyObject
}
Наглядное руководство, как не надо работать с JPA
+66
@NamedQuery(
name = "ImageBankTag.findAllTags",
query = "select distinct tag from AdTag tag where tag.tag in (:tags) order by tag.tag"
)
})
@Data
@Entity
@Table(name = "image_bank_tags",uniqueConstraints = {@UniqueConstraint(columnNames={"tag"})})
public class ImageBankTag implements Serializable{
. . .
@NamedQuery(
name = "AdTag.findAllTags",
query = "select distinct tag from AdTag tag where tag.tag in (:tags) order by tag.tag"
)
})
@Data
@Entity
@Table(name = "admanager2_tags",uniqueConstraints = {@UniqueConstraint(columnNames={"tag"})})
public class AdTag implements Serializable{
Такой вот своеобразный джоин, с подстраховкой.
+75
ObservableStorage.ConfigurationTuple<Integer, ObservableStorage.ConfigurationTuple<Foo, ObservableStorage.ConfigurationTuple<Foo, ObservableStorage.ConfigurationEnd>>> build = RemoteObservableStorage
.configurationBuilder()
.use("foo").as(Foo.class)
.use("foo1").as(Foo.class)
.use("ids").as(Integer.class)
.build();
И тут Остапа понесло :)
Всем тайп сейфити посоны
+117
final class HackFormFlowPanel extends FormPanel {
...
@Override
public void reset() {
GWT.log("Upload form reset suppressed");
// Overridden to do nothing.
}
public void reallyReset() {
super.reset();
}
}
После успешного аплоада файла gwtupload говорит reset форме с элементом выбора файла. И никак не отключается. А нужно, чтобы файл оставался выбранным.
Пришлось нагородить вот такой костыль.
+74
if (myTransactions
.get(i)
.getTransactionType()
.name()
.compareToIgnoreCase(
com.mycompany.myproject.common.TransactionType.ENTER
.name()) == 0
|| myTransactions
.get(i)
.getTransactionType()
.name()
.compareToIgnoreCase(
com.mycompany.myproject.common.TransactionType.ENTER_AGAIN
.name()) == 0) {
BigDecimal fee = myTransactions.get(i).
.getAmount().subtract(
myTransactions.get(i)
.getContribution());
// ...
}
// Notes by Wissenstein
//
// package com.mycompany.myproject.common;
// public enum TransactionType {
// ENTER, ENTER_AGAIN, GET, GIVE
// }
// ...
// public class Transaction {
// ...
// public TransactionType getTransactionType() {
// ...
// }
// }
// ...
// List<Transaction> myTransactions;
// ...
// P.S. Идентификаторы изменены.
К тому, что myTransactions.get(i) повторяется, я уже привык и рефакторю это одним махом.
Однако использованный здесь метод сравнения значений типа enum меня озадачил…