[Demonstration 1]

[Buggy Method]
public static void delectObject(String s) {
    BuildDTO build = (BuildDTO) buildService.get(Integer.parseInt(s));
    buildService.delete(build);
}

[Buggy Hunk]
public static void delectObject(String s){

[Patch]
public void delectObject(String s){

[Demonstration 2]

[Buggy Method]
private void createNewEvent() {
    String date = dateText.getText().toString();
    String time = timeText.getText().toString();
    if (!date.isEmpty() || !time.isEmpty()) {
        Calendar now = Calendar.getInstance();
        Calendar minimumTime = Calendar.getInstance();
        Calendar notifyTime = getNotifyTime();
        minimumTime.setTime(notifyTime.getTime());
        minimumTime.add(Calendar.MINUTE, -10);
        String gameTime = getBungieTime(date, time);
        String bungieId = callback.getBungieId();
        String userName = callback.getUserName();
        game.setCreatorName(userName);
        game.setCreatorId(bungieId);
        game.setEventId(selectedEvent);
        game.setTypeId(selectedType);
        game.setTime(gameTime);
        game.setInscriptions(1);
        game.setMinLight(lightBar.getProgress());
        game.setStatus(GameModel.STATUS_NEW);
        if (commentText.getText().length() != 0) {
            game.setComment(commentText.getText().toString());
        } else
            game.setComment("");
        game.setJoined(true);
        if (now.getTimeInMillis() <= minimumTime.getTimeInMillis()) {
            Bundle bundle = new Bundle();
            bundle.putInt(ServerService.REQUEST_TAG, ServerService.TYPE_CREATE_GAME);
            bundle.putSerializable(ServerService.GAME_TAG, game);
            callback.runServerService(bundle);
        } else
            Toast.makeText(getContext(), getResources().getString(R.string.match_must_created) + " " + minimumIntTime + " " + getResources().getString(R.string.minutes_advance), Toast.LENGTH_SHORT).show();
    } else
        Toast.makeText(getContext(), R.string.when_play, Toast.LENGTH_SHORT).show();
}

[Buggy Hunk]
game.setMinLight(lightBar.getProgress());

[Patch]
game.setMinLight(lightBar.getProgress() + minLight);

[Demonstration 3]

[Buggy Method]
@Override
public void handleMessage(Message message) {
    super.handleMessage(message);
    switch(message.what) {
        case Constant.DOWNLOAD_LATEST_NEWS_SUCCESS:
            DailyNews dailyNews = (DailyNews) ((Object[]) message.obj)[0];
            dailyNews.getStories().add(0, new Summary());
            for (Summary summary : dailyNews.getStories()) {
                summary.setDate(dailyNews.getDate());
            }
            contentMainFragment.setDailyNews(dailyNews);
            break;
        case Constant.DOWNLOAD_BEFORE_NEWS_SUCCESS:
            DailyNews beforeNews = (DailyNews) message.obj;
            Summary dateSummary = new Summary();
            dateSummary.setType(Constant.ITEM_DATE_TYPE);
            beforeNews.getStories().add(0, dateSummary);
            for (Summary summary : beforeNews.getStories()) {
                summary.setDate(beforeNews.getDate());
            }
            contentMainFragment.addSummary(beforeNews.getStories());
            break;
        case Constant.DOWNLOAD_THEME_LIST_SUCCESS:
            ThemeList themeList = (ThemeList) ((Object[]) message.obj)[0];
            setNavigation(themeList);
            break;
        case Constant.DOWNLOAD_THEME_NEWS_SUCCESS:
            ThemeNews themeNews = (ThemeNews) ((Object[]) message.obj)[0];
            contentMainFragment.addThemeNews(themeNews);
            // commonUtil.promptMsg("Download Theme News Success!");
            break;
        case Constant.NETWORK_ERROR:
            commonUtil.promptMsg("Network Error");
            break;
        case Constant.JSON_PARSE_ERROR:
            commonUtil.promptMsg("Json Parse Error");
            break;
        case Constant.THEME_CHANGE:
            drawer.closeDrawers();
            Theme theme = (Theme) ((Object[]) message.obj)[0];
            // commonUtil.promptMsg("theme name is " + theme.getName());
            if (theme.getId() != Constant.THEME_HOME_ID) {
                newsService.getThemeNews(theme.getId(), handler);
                toolbar.setTitle(theme.getName());
            } else {
                if (contentMainFragment.themeId != Constant.THEME_HOME_ID)
                    toolbar.setTitle("今日的大新闻");
            }
            contentMainFragment.changeTheme(theme.getId());
            break;
        case Constant.NETWORK_ERROR_NEED_RETRY:
            contentMainFragment.getBeforeStoriesFail();
            // commonUtil.promptMsg("Network Error...retrying...");
            break;
        default:
            break;
    }
}

[Buggy Hunk]
Theme theme = (Theme) ((Object[])message.obj)[0];

[Patch]
Theme theme = (Theme) message.obj;