- 1
- 2
- 3
- 4
- 5
- 6
- 7
StringBuffer possibleNames = new StringBuffer();
int max = item.getPossibleNames().length;
for (int i = 0; i < max; i++) {
..
possibleNames.append(ing.name + " " + ( i != (max-1) ? ", " : ""));
..
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+71
StringBuffer possibleNames = new StringBuffer();
int max = item.getPossibleNames().length;
for (int i = 0; i < max; i++) {
..
possibleNames.append(ing.name + " " + ( i != (max-1) ? ", " : ""));
..
}
вставка запятых между элементами массива
+71
public class Pages extends TabActivity {
@Override
protected void onResume() {
super.onResume();
if (!loading) {
loading = true;
new EmptyThread().execute();
}
}
@Override
protected void onPause() {
Data.killNow = true;
super.onPause();
}
private class EmptyThread extends AsyncTask<Void, String, Void> {
@Override
protected void onPreExecute() {
Data.killNow = false;
}
@Override
protected Void doInBackground(Void... unused) {
while (!Data.killNow) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
}
}
return null;
}
@Override
protected void onPostExecute(Void unused) {
loading = false;
}
}
}
В продолжение предыдущей темы (http://govnokod.ru/9256): из-за столь вольного обращения с модификатором static и адского обращения с AsyncTask*ами программист нарвался на утечку памяти и AsyncTask*и у него прекратили запускаться (не факт, что из-за утечек, я их исходный код не смотрел). Выше вам был представлен костыль, благодаря которому асинхронки всё-таки запускались. Как - я так и не постиг.
Для справки - когда экран выходит на передний план, срабатывает onResume(), когда уходит с него - onPause().
+71
package com.govnoistochnik.servleti;
...
import javax.servlet.GenericServlet;
...
public class GenericReportingServlet extends GenericServlet {
PrintWriter oos; // Говно источник
...
public synchronized void createReport(...)
{
oos = new PrintWriter();
...
// pessot strok govnokoda vida
oos.println("report");
...
saveToDB(oos.toString());
oos.close;
}
public synchronized void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
// Kucha govnokoda
createReport(...);
// Prodoljeniye kuchi
}
...
}
Продолжение говнокода
http://govnokod.ru/9146
Мы нашли почему там Синхронный метод.
Глобальная переменная в коде. Какому идеоту пришло в голову так писать.....пи......
+71
setCookie(new String[] {username, Long.toString(expiryTime), signatureValue}, tokenLifetime, request, response);
int tokenLifetime = calculateLoginLifetime(request, successfulAuthentication);
protected int calculateLoginLifetime(HttpServletRequest request, Authentication authentication) {
return getTokenValiditySeconds();
}
protected int getTokenValiditySeconds() {
return tokenValiditySeconds;
}
private int tokenValiditySeconds = TWO_WEEKS_S;
public static final int TWO_WEEKS_S = 1209600;
Spring Security........
Логирование по куки токену.....
+71
public class AuthorizedUserObservervable implements Runnable {
private long sleepTime = 1000;
private HashMap<AuthorizedUserObserver, HashMap<AuthorizedUser, Integer>> observers = new HashMap<AuthorizedUserObserver, HashMap<AuthorizedUser, Integer>>();
private void setSleepTime(long sleepTime) {
this.sleepTime = sleepTime;
}
public void add(AuthorizedUserObserver auo) {
HashMap<AuthorizedUser, Integer> userCache = new HashMap<AuthorizedUser, Integer>();
for (AuthorizedUser user : auo.getUsers()) {
userCache.put(user, null);
}
observers.put(auo, userCache);
}
public void beginObservation() {
new Thread(this).start();
}
@Override
public void run() {
while (true) {
try {
for (Map.Entry<AuthorizedUserObserver, HashMap<AuthorizedUser, Integer>> observer : observers.entrySet()) {
for (Map.Entry<AuthorizedUser, Integer> user : observer.getValue().entrySet()) {
int newPostsCount = user.getKey().getNewPostsCount();
if (user.getValue() == null || newPostsCount != user.getValue()) {
HashMap<AuthorizedUser, Integer> userCache = new HashMap<AuthorizedUser, Integer>();
userCache.put(user.getKey(), newPostsCount);
observers.put(observer.getKey(), userCache);
observer.getKey().notify(user.getKey(), newPostsCount);
}
}
}
Thread.sleep(sleepTime);
} catch (InterruptedException ex) {
Logger.getLogger(UserObservervable.class.getName()).log(Level.SEVERE, null, ex);
} catch (AuthenticationException e) {
Thread.currentThread().stop(e);
}
}
}
}
Чего стоит гибкость.
+71
/**
* @see ru.dwin.inbox.gtk.videotypes.IVideo#startPlay(int)
*/
@Override public void startPlay(int delay)
{
try
{
Thread.sleep(delay * 1000);
}
catch (InterruptedException e1)
{
RestartAllThreads();
}
if (theTimer == null)
{
theTimer = new Timer(ASECOND, new ActionListener()
{
@Override public void actionPerformed(ActionEvent e)
{
if (elapsedTime >= getDuration())
{
theTimer.stop();
resetPlay();
Toolkit.getDefaultToolkit().beep();
}
else
{
elapsedTime += (int) ASECOND / 1000;
notifyAddedRenderers(USwingWorker.ALL);
}
}
});
}
else
{
theTimer.start();
}
}
Играть через ХЗ сколько секунд...
+71
try {
getClass(className);
getExecutableMethod();
setAccessible();
try {
method.invoke(cClass.newInstance(), dataSource, propMap);
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SecurityException e) {
e.printStackTrace();
}
О чем думал автор - непонятно.
+71
if (prodAttainment < payeeSalesGoal)
{
cashComp = 1;
}
else if (prodAttainment < 1.25 * payeeSalesGoal
&& prodAttainment >= payeeSalesGoal)
{
cashComp = 0.75;
}
else if (prodAttainment >= 1.25 * payeeSalesGoal)
{
cashComp = 0.5;
}
Меня гнет или и правда нужно столько проверок? Чтоб наверняка...
+71
@Test
public void testExecuteNoBean1() {
try {
//...
} catch (Exception e) {
assertEquals("ActionHandlerDefineDueDate: Error, failed to retrieve ... <over 9000 chars>", e.getMessage());
}
}
У кого-то явно проблемы с TDD.
+71
if (wdContext.nodeTable().size() <= 5)
wdContext.currentContextElement().setRowsIn(-1);
else
wdContext.currentContextElement().setRowsIn(-1);