Example usage for org.apache.commons.lang3.tuple Triple getMiddle

List of usage examples for org.apache.commons.lang3.tuple Triple getMiddle

Introduction

In this page you can find the example usage for org.apache.commons.lang3.tuple Triple getMiddle.

Prototype

public abstract M getMiddle();

Source Link

Document

Gets the middle element from this triple.

Usage

From source file:alfio.manager.WaitingQueueManagerIntegrationTest.java

@Test
public void testAssignTicketToWaitingQueueUnboundedCategory() {
    LocalDateTime start = LocalDateTime.now().minusMinutes(1);
    LocalDateTime end = LocalDateTime.now().plusMinutes(20);
    List<TicketCategoryModification> categories = Collections.singletonList(new TicketCategoryModification(null,
            "default", AVAILABLE_SEATS, new DateTimeModification(start.toLocalDate(), start.toLocalTime()),
            new DateTimeModification(end.toLocalDate(), end.toLocalTime()), DESCRIPTION, BigDecimal.TEN, false,
            "", false, null, null, null, null, null));

    configurationManager.saveSystemConfiguration(ConfigurationKeys.ENABLE_WAITING_QUEUE, "true");

    Event event = initEvent(categories, organizationRepository, userManager, eventManager, eventRepository)
            .getKey();/*from www.j  av a  2 s .  com*/

    TicketCategory unbounded = ticketCategoryRepository.findByEventId(event.getId()).get(0);

    TicketReservationModification tr = new TicketReservationModification();
    tr.setAmount(AVAILABLE_SEATS - 1);
    tr.setTicketCategoryId(unbounded.getId());

    TicketReservationModification tr2 = new TicketReservationModification();
    tr2.setAmount(1);
    tr2.setTicketCategoryId(unbounded.getId());

    TicketReservationWithOptionalCodeModification multi = new TicketReservationWithOptionalCodeModification(tr,
            Optional.empty());
    TicketReservationWithOptionalCodeModification single = new TicketReservationWithOptionalCodeModification(
            tr2, Optional.empty());

    String reservationId = ticketReservationManager.createTicketReservation(event,
            Collections.singletonList(multi), Collections.emptyList(), DateUtils.addDays(new Date(), 1),
            Optional.empty(), Optional.empty(), Locale.ENGLISH, false);
    TotalPrice reservationCost = ticketReservationManager.totalReservationCostWithVAT(reservationId);
    PaymentResult result = ticketReservationManager.confirm("", null, event, reservationId, "test@test.ch",
            new CustomerName("Full Name", "Full", "Name", event), Locale.ENGLISH, "", reservationCost,
            Optional.empty(), Optional.of(PaymentProxy.OFFLINE), false, null, null, null);
    assertTrue(result.isSuccessful());

    String reservationIdSingle = ticketReservationManager.createTicketReservation(event,
            Collections.singletonList(single), Collections.emptyList(), DateUtils.addDays(new Date(), 1),
            Optional.empty(), Optional.empty(), Locale.ENGLISH, false);
    TotalPrice reservationCostSingle = ticketReservationManager
            .totalReservationCostWithVAT(reservationIdSingle);
    PaymentResult resultSingle = ticketReservationManager.confirm("", null, event, reservationIdSingle,
            "test@test.ch", new CustomerName("Full Name", "Full", "Name", event), Locale.ENGLISH, "",
            reservationCostSingle, Optional.empty(), Optional.of(PaymentProxy.OFFLINE), false, null, null,
            null);
    assertTrue(resultSingle.isSuccessful());

    assertEquals(0, eventRepository.findStatisticsFor(event.getId()).getDynamicAllocation());

    assertTrue(
            waitingQueueManager.subscribe(event, customerJohnDoe(event), "john@doe.com", null, Locale.ENGLISH));

    ticketReservationManager.deleteOfflinePayment(event, reservationIdSingle, false);

    List<Triple<WaitingQueueSubscription, TicketReservationWithOptionalCodeModification, ZonedDateTime>> subscriptions = waitingQueueManager
            .distributeSeats(event).collect(Collectors.toList());
    assertEquals(1, subscriptions.size());
    Triple<WaitingQueueSubscription, TicketReservationWithOptionalCodeModification, ZonedDateTime> subscriptionDetail = subscriptions
            .get(0);
    assertEquals("john@doe.com", subscriptionDetail.getLeft().getEmailAddress());
    TicketReservationWithOptionalCodeModification reservation = subscriptionDetail.getMiddle();
    assertEquals(Integer.valueOf(unbounded.getId()), reservation.getTicketCategoryId());
    assertEquals(Integer.valueOf(1), reservation.getAmount());
    assertTrue(subscriptionDetail.getRight().isAfter(ZonedDateTime.now()));
}

From source file:alfio.manager.WaitingQueueManagerIntegrationTest.java

@Test
public void testAssignTicketToWaitingQueueBoundedCategory() {
    LocalDateTime start = LocalDateTime.now().minusMinutes(2);
    LocalDateTime end = LocalDateTime.now().plusMinutes(20);
    List<TicketCategoryModification> categories = Collections.singletonList(new TicketCategoryModification(null,
            "default", AVAILABLE_SEATS, new DateTimeModification(start.toLocalDate(), start.toLocalTime()),
            new DateTimeModification(end.toLocalDate(), end.toLocalTime()), DESCRIPTION, BigDecimal.TEN, false,
            "", true, null, null, null, null, null));

    configurationManager.saveSystemConfiguration(ConfigurationKeys.ENABLE_WAITING_QUEUE, "true");

    Event event = initEvent(categories, organizationRepository, userManager, eventManager, eventRepository)
            .getKey();//from   w  ww  . j a v  a  2s  . c  o m

    TicketCategory bounded = ticketCategoryRepository.findByEventId(event.getId()).get(0);

    TicketReservationModification tr = new TicketReservationModification();
    tr.setAmount(AVAILABLE_SEATS - 1);
    tr.setTicketCategoryId(bounded.getId());

    TicketReservationModification tr2 = new TicketReservationModification();
    tr2.setAmount(1);
    tr2.setTicketCategoryId(bounded.getId());

    TicketReservationWithOptionalCodeModification multi = new TicketReservationWithOptionalCodeModification(tr,
            Optional.empty());
    TicketReservationWithOptionalCodeModification single = new TicketReservationWithOptionalCodeModification(
            tr2, Optional.empty());

    String reservationId = ticketReservationManager.createTicketReservation(event,
            Collections.singletonList(multi), Collections.emptyList(), DateUtils.addDays(new Date(), 1),
            Optional.empty(), Optional.empty(), Locale.ENGLISH, false);
    TotalPrice reservationCost = ticketReservationManager.totalReservationCostWithVAT(reservationId);
    PaymentResult result = ticketReservationManager.confirm("", null, event, reservationId, "test@test.ch",
            new CustomerName("Full Name", "Full", "Name", event), Locale.ENGLISH, "", reservationCost,
            Optional.empty(), Optional.of(PaymentProxy.OFFLINE), false, null, null, null);
    assertTrue(result.isSuccessful());

    String reservationIdSingle = ticketReservationManager.createTicketReservation(event,
            Collections.singletonList(single), Collections.emptyList(), DateUtils.addDays(new Date(), 1),
            Optional.empty(), Optional.empty(), Locale.ENGLISH, false);
    TotalPrice reservationCostSingle = ticketReservationManager
            .totalReservationCostWithVAT(reservationIdSingle);
    PaymentResult resultSingle = ticketReservationManager.confirm("", null, event, reservationIdSingle,
            "test@test.ch", new CustomerName("Full Name", "Full", "Name", event), Locale.ENGLISH, "",
            reservationCostSingle, Optional.empty(), Optional.of(PaymentProxy.OFFLINE), false, null, null,
            null);
    assertTrue(resultSingle.isSuccessful());

    assertEquals(0, eventRepository.findStatisticsFor(event.getId()).getDynamicAllocation());

    assertTrue(
            waitingQueueManager.subscribe(event, customerJohnDoe(event), "john@doe.com", null, Locale.ENGLISH));

    ticketReservationManager.deleteOfflinePayment(event, reservationIdSingle, false);

    List<Triple<WaitingQueueSubscription, TicketReservationWithOptionalCodeModification, ZonedDateTime>> subscriptions = waitingQueueManager
            .distributeSeats(event).collect(Collectors.toList());
    assertEquals(1, subscriptions.size());
    Triple<WaitingQueueSubscription, TicketReservationWithOptionalCodeModification, ZonedDateTime> subscriptionDetail = subscriptions
            .get(0);
    assertEquals("john@doe.com", subscriptionDetail.getLeft().getEmailAddress());
    TicketReservationWithOptionalCodeModification reservation = subscriptionDetail.getMiddle();
    assertEquals(Integer.valueOf(bounded.getId()), reservation.getTicketCategoryId());
    assertEquals(Integer.valueOf(1), reservation.getAmount());
    assertTrue(subscriptionDetail.getRight().isAfter(ZonedDateTime.now()));
}

From source file:blusunrize.immersiveengineering.common.items.ItemRailgun.java

@Override
public void onPlayerStoppedUsing(ItemStack stack, World world, EntityLivingBase user, int timeLeft) {
    if (user instanceof EntityPlayer) {
        int inUse = this.getMaxItemUseDuration(stack) - timeLeft;
        ItemNBTHelper.remove(stack, "inUse");
        if (inUse < getChargeTime(stack))
            return;
        int energy = IEConfig.Tools.railgun_consumption;
        float energyMod = 1 + this.getUpgrades(stack).getFloat("consumption");
        energy = (int) (energy * energyMod);
        if (this.extractEnergy(stack, energy, true) == energy) {
            ItemStack ammo = findAmmo((EntityPlayer) user);
            if (!ammo.isEmpty()) {
                Vec3d vec = user.getLookVec();
                float speed = 20;
                EntityRailgunShot shot = new EntityRailgunShot(user.world, user, vec.x * speed, vec.y * speed,
                        vec.z * speed, Utils.copyStackWithAmount(ammo, 1));
                ammo.shrink(1);/*from  ww  w. j a  va2 s .  c  om*/
                if (ammo.getCount() <= 0)
                    ((EntityPlayer) user).inventory.deleteStack(ammo);
                user.world.playSound(null, user.posX, user.posY, user.posZ, IESounds.railgunFire,
                        SoundCategory.PLAYERS, 1, .5f + (.5f * user.getRNG().nextFloat()));
                this.extractEnergy(stack, energy, false);
                if (!world.isRemote)
                    user.world.spawnEntity(shot);

                Triple<ItemStack, ShaderRegistryEntry, ShaderCase> shader = ShaderRegistry
                        .getStoredShaderAndCase(stack);
                if (shader != null) {
                    Vec3d pos = Utils.getLivingFrontPos(user, .75, user.height * .75,
                            user.getActiveHand() == EnumHand.MAIN_HAND ? user.getPrimaryHand()
                                    : user.getPrimaryHand().opposite(),
                            false, 1);
                    shader.getMiddle().getEffectFunction().execute(world, shader.getLeft(), stack,
                            shader.getRight().getShaderType(), pos, user.getForward(), .125f);
                }
            }
        }
    }
}

From source file:at.gridtec.lambda4j.predicate.tri.ThrowableTriPredicate.java

/**
 * Applies this predicate to the given tuple.
 *
 * @param tuple The tuple to be applied to the predicate
 * @return The return value from the predicate, which is its result.
 * @throws NullPointerException If given argument is {@code null}
 * @throws X Any throwable from this predicates action
 * @see org.apache.commons.lang3.tuple.Triple
 *///from   www .  j ava2s. c o m
default boolean testThrows(@Nonnull Triple<T, U, V> tuple) throws X {
    Objects.requireNonNull(tuple);
    return testThrows(tuple.getLeft(), tuple.getMiddle(), tuple.getRight());
}

From source file:com.mirth.connect.client.ui.codetemplate.CodeTemplateLibrariesPanel.java

private void initComponents(Channel channel) {
    setBackground(UIConstants.BACKGROUND_COLOR);

    selectAllLabel = new JLabel("<html><u>Select All</u></html>");
    selectAllLabel.setForeground(Color.BLUE);
    selectAllLabel.addMouseListener(new MouseAdapter() {
        @Override/*from  w w  w  . j a  va  2s  .c om*/
        public void mouseReleased(MouseEvent evt) {
            for (Enumeration<? extends MutableTreeTableNode> libraryNodes = ((MutableTreeTableNode) libraryTreeTable
                    .getTreeTableModel().getRoot()).children(); libraryNodes.hasMoreElements();) {
                MutableTreeTableNode libraryNode = libraryNodes.nextElement();
                Triple<String, String, Boolean> triple = (Triple<String, String, Boolean>) libraryNode
                        .getUserObject();
                libraryTreeTable.getTreeTableModel().setValueAt(
                        new MutableTriple<String, String, Boolean>(triple.getLeft(), triple.getMiddle(), true),
                        libraryNode, libraryTreeTable.getHierarchicalColumn());
            }
            libraryTreeTable.updateUI();
        }
    });

    selectSeparatorLabel = new JLabel("|");

    deselectAllLabel = new JLabel("<html><u>Deselect All</u></html>");
    deselectAllLabel.setForeground(Color.BLUE);
    deselectAllLabel.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseReleased(MouseEvent evt) {
            for (Enumeration<? extends MutableTreeTableNode> libraryNodes = ((MutableTreeTableNode) libraryTreeTable
                    .getTreeTableModel().getRoot()).children(); libraryNodes.hasMoreElements();) {
                MutableTreeTableNode libraryNode = libraryNodes.nextElement();
                Triple<String, String, Boolean> triple = (Triple<String, String, Boolean>) libraryNode
                        .getUserObject();
                libraryTreeTable.getTreeTableModel().setValueAt(
                        new MutableTriple<String, String, Boolean>(triple.getLeft(), triple.getMiddle(), false),
                        libraryNode, libraryTreeTable.getHierarchicalColumn());
            }
            libraryTreeTable.updateUI();
        }
    });

    expandAllLabel = new JLabel("<html><u>Expand All</u></html>");
    expandAllLabel.setForeground(Color.BLUE);
    expandAllLabel.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseReleased(MouseEvent evt) {
            libraryTreeTable.expandAll();
        }
    });

    expandSeparatorLabel = new JLabel("|");

    collapseAllLabel = new JLabel("<html><u>Collapse All</u></html>");
    collapseAllLabel.setForeground(Color.BLUE);
    collapseAllLabel.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseReleased(MouseEvent evt) {
            libraryTreeTable.collapseAll();
        }
    });

    final TableCellEditor libraryCellEditor = new LibraryTreeCellEditor();

    libraryTreeTable = new MirthTreeTable() {
        @Override
        public TableCellEditor getCellEditor(int row, int column) {
            if (isHierarchical(column)) {
                return libraryCellEditor;
            } else {
                return super.getCellEditor(row, column);
            }
        }
    };

    DefaultTreeTableModel model = new SortableTreeTableModel();
    DefaultMutableTreeTableNode rootNode = new DefaultMutableTreeTableNode();
    model.setRoot(rootNode);

    libraryTreeTable.setLargeModel(true);
    libraryTreeTable.setTreeTableModel(model);
    libraryTreeTable.setOpenIcon(null);
    libraryTreeTable.setClosedIcon(null);
    libraryTreeTable.setLeafIcon(null);
    libraryTreeTable.setRootVisible(false);
    libraryTreeTable.setDoubleBuffered(true);
    libraryTreeTable.setDragEnabled(false);
    libraryTreeTable.setRowSelectionAllowed(true);
    libraryTreeTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
    libraryTreeTable.setRowHeight(UIConstants.ROW_HEIGHT);
    libraryTreeTable.setFocusable(true);
    libraryTreeTable.setOpaque(true);
    libraryTreeTable.setEditable(true);
    libraryTreeTable.setSortable(false);
    libraryTreeTable.setAutoCreateColumnsFromModel(false);
    libraryTreeTable.setShowGrid(true, true);
    libraryTreeTable.setTableHeader(null);

    if (Preferences.userNodeForPackage(Mirth.class).getBoolean("highlightRows", true)) {
        libraryTreeTable.setHighlighters(HighlighterFactory
                .createAlternateStriping(UIConstants.HIGHLIGHTER_COLOR, UIConstants.BACKGROUND_COLOR));
    }

    libraryTreeTable.setTreeCellRenderer(new LibraryTreeCellRenderer());

    libraryTreeTable.addMouseListener(new MouseAdapter() {
        @Override
        public void mousePressed(MouseEvent evt) {
            checkSelection(evt);
        }

        @Override
        public void mouseReleased(MouseEvent evt) {
            checkSelection(evt);
        }

        private void checkSelection(MouseEvent evt) {
            if (libraryTreeTable.rowAtPoint(new Point(evt.getX(), evt.getY())) < 0) {
                libraryTreeTable.clearSelection();
            }
        }
    });

    libraryTreeTable.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
        @Override
        public void valueChanged(ListSelectionEvent evt) {
            if (!evt.getValueIsAdjusting()) {
                boolean visible = false;
                int selectedRow = libraryTreeTable.getSelectedRow();

                if (selectedRow >= 0) {
                    TreePath selectedPath = libraryTreeTable.getPathForRow(selectedRow);
                    if (selectedPath != null) {
                        visible = true;
                        Triple<String, String, Boolean> triple = (Triple<String, String, Boolean>) ((MutableTreeTableNode) selectedPath
                                .getLastPathComponent()).getUserObject();
                        String description = "";

                        if (selectedPath.getPathCount() == 2) {
                            description = libraryMap.get(triple.getLeft()).getDescription();
                        } else if (selectedPath.getPathCount() == 3) {
                            description = PlatformUI.MIRTH_FRAME.codeTemplatePanel.getCachedCodeTemplates()
                                    .get(triple.getLeft()).getDescription();
                        }

                        if (StringUtils.isBlank(description) || StringUtils.equals(description, CodeTemplateUtil
                                .getDocumentation(CodeTemplate.DEFAULT_CODE).getDescription())) {
                            descriptionTextPane.setText(
                                    "<html><body class=\"code-template-libraries-panel\"><i>No description.</i></body></html>");
                        } else {
                            descriptionTextPane.setText("<html><body class=\"code-template-libraries-panel\">"
                                    + MirthXmlUtil.encode(description) + "</body></html>");
                        }
                    }
                }

                descriptionScrollPane.setVisible(visible);
                updateUI();
            }
        }
    });

    libraryTreeTableScrollPane = new JScrollPane(libraryTreeTable);

    descriptionTextPane = new JTextPane();
    descriptionTextPane.setContentType("text/html");
    HTMLEditorKit editorKit = new HTMLEditorKit();
    StyleSheet styleSheet = editorKit.getStyleSheet();
    styleSheet.addRule(".code-template-libraries-panel {font-family:\"Tahoma\";font-size:11;text-align:top}");
    descriptionTextPane.setEditorKit(editorKit);
    descriptionTextPane.setEditable(false);
    descriptionScrollPane = new JScrollPane(descriptionTextPane);
    descriptionScrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
    descriptionScrollPane.setVisible(false);
}

From source file:com.magnet.mmx.server.plugin.mmxmgmt.util.MMXConfigurationTest.java

/**
 * Set the Configuration property via REST interface and check whether the JMX interface returns the same value
 *
 * @throws Exception/*from  ww  w  . j  a v  a2s . c o  m*/
 */
//TODO: Use the web target JAXRS API to execute these request possibly ?
@Ignore
@Test
public void testSetRESTGetMBeanLocal() throws Exception {
    LOGGER.debug("testSetRESTGetMBeanLocal");
    ObjectName name = new ObjectName(MMX_MBEAN_OBJECT_NAME);
    ServletTester tester = new ServletTester();
    tester.addServlet(LaxConfigServlet.class, "/config");
    tester.start();

    for (Triple<String, String, String> triple : mbeanAttributes) {
        String attrName = triple.getLeft();
        String attrType = triple.getRight();

        String attrValueStr;
        if (attrType.equals("int"))
            attrValueStr = Integer.toString(RandomUtils.nextInt(30000, 65535));
        else if (attrType.equals("long"))
            attrValueStr = Long.toString(RandomUtils.nextLong(10, 1000));
        else
            attrValueStr = RandomStringUtils.randomAlphabetic(10);

        String str = constructGson(triple.getMiddle(), attrValueStr);

        HttpTester request = new HttpTester();
        request.setMethod("POST");
        request.setHeader("Host", "tester");
        request.setContent(str);
        request.setHeader("Content-Type", "application/json");

        request.setURI("/config");
        HttpTester response = new HttpTester();
        //response = response.parse(tester.getResponses(request.generate()));
        response.parse(tester.getResponses(request.generate()));
        assertEquals("Values do not match", server.getAttribute(name, triple.getLeft()).toString(),
                attrValueStr);

    }
}

From source file:alluxio.master.file.PermissionCheckTest.java

private LockedInodePath getLockedInodePath(ArrayList<Triple<String, String, Mode>> permissions)
        throws Exception {
    List<Inode<?>> inodes = new ArrayList<>();
    inodes.add(getRootInode());//from  w  ww.j av a2 s.c  o  m
    if (permissions.size() == 0) {
        return new MutableLockedInodePath(new AlluxioURI("/"), inodes, null);
    }
    String uri = "";
    for (int i = 0; i < permissions.size(); i++) {
        Triple<String, String, Mode> permission = permissions.get(i);
        String owner = permission.getLeft();
        String group = permission.getMiddle();
        Mode mode = permission.getRight();
        uri += "/" + (i + 1);
        if (i == permissions.size() - 1) {
            Inode<?> inode = InodeFile.create(i + 1, i, (i + 1) + "", CommonUtils.getCurrentMs(),
                    CreateFileOptions.defaults().setBlockSizeBytes(Constants.KB).setOwner(owner).setGroup(group)
                            .setMode(mode));
            inodes.add(inode);
        } else {
            Inode<?> inode = InodeDirectory.create(i + 1, i, (i + 1) + "",
                    CreateDirectoryOptions.defaults().setOwner(owner).setGroup(group).setMode(mode));
            inodes.add(inode);
        }
    }
    return new MutableLockedInodePath(new AlluxioURI(uri), inodes, null);
}

From source file:blusunrize.immersiveengineering.common.items.ItemRevolver.java

@Override
public ActionResult<ItemStack> onItemRightClick(World world, EntityPlayer player, @Nonnull EnumHand hand) {
    ItemStack revolver = player.getHeldItem(hand);
    if (!world.isRemote) {
        if (player.isSneaking()) {
            CommonProxy.openGuiForItem(player,
                    hand == EnumHand.MAIN_HAND ? EntityEquipmentSlot.MAINHAND : EntityEquipmentSlot.OFFHAND);
            return new ActionResult(EnumActionResult.SUCCESS, revolver);
        } else if (player.getCooledAttackStrength(1) >= 1) {
            if (this.getUpgrades(revolver).getBoolean("nerf"))
                world.playSound(null, player.posX, player.posY, player.posZ, SoundEvents.ENTITY_ITEM_PICKUP,
                        SoundCategory.PLAYERS, 1f, 0.6f);
            else {
                if (getShootCooldown(revolver) > 0 || ItemNBTHelper.hasKey(revolver, "reload"))
                    return new ActionResult(EnumActionResult.PASS, revolver);

                NonNullList<ItemStack> bullets = getBullets(revolver);

                if (isEmpty(revolver, false))
                    for (int i = 0; i < player.inventory.getSizeInventory(); i++) {
                        ItemStack stack = player.inventory.getStackInSlot(i);
                        if (stack.getItem() instanceof ItemSpeedloader
                                && !((ItemSpeedloader) stack.getItem()).isEmpty(stack)) {
                            for (ItemStack b : bullets)
                                if (!b.isEmpty())
                                    world.spawnEntity(
                                            new EntityItem(world, player.posX, player.posY, player.posZ, b));
                            setBullets(revolver, ((ItemSpeedloader) stack.getItem()).getContainedItems(stack));
                            ((ItemSpeedloader) stack.getItem()).setContainedItems(stack,
                                    NonNullList.withSize(8, ItemStack.EMPTY));
                            player.inventory.markDirty();
                            if (player instanceof EntityPlayerMP)
                                ImmersiveEngineering.packetHandler.sendTo(new MessageSpeedloaderSync(i, hand),
                                        (EntityPlayerMP) player);

                            ItemNBTHelper.setInt(revolver, "reload", 60);
                            return new ActionResult(EnumActionResult.SUCCESS, revolver);
                        }/* w w  w  .  j  av a 2s. c o  m*/
                    }

                if (!ItemNBTHelper.hasKey(revolver, "reload")) {
                    if (!bullets.get(0).isEmpty() && bullets.get(0).getItem() instanceof ItemBullet
                            && ItemNBTHelper.hasKey(bullets.get(0), "bullet")) {
                        String key = ItemNBTHelper.getString(bullets.get(0), "bullet");
                        IBullet bullet = BulletHandler.getBullet(key);
                        if (bullet != null) {
                            Vec3d vec = player.getLookVec();
                            boolean electro = getUpgrades(revolver).getBoolean("electro");
                            int count = bullet.getProjectileCount(player);
                            if (count == 1) {
                                Entity entBullet = getBullet(player, vec, vec, key, bullets.get(0), electro);
                                player.world.spawnEntity(
                                        bullet.getProjectile(player, bullets.get(0), entBullet, electro));
                            } else
                                for (int i = 0; i < count; i++) {
                                    Vec3d vecDir = vec.add(player.getRNG().nextGaussian() * .1,
                                            player.getRNG().nextGaussian() * .1,
                                            player.getRNG().nextGaussian() * .1);
                                    Entity entBullet = getBullet(player, vec, vecDir, key, bullets.get(0),
                                            electro);
                                    player.world.spawnEntity(
                                            bullet.getProjectile(player, bullets.get(0), entBullet, electro));
                                }
                            bullets.set(0, bullet.getCasing(bullets.get(0)).copy());

                            float noise = 1;
                            Utils.attractEnemies(player, 64 * noise);
                            SoundEvent sound = bullet.getSound();
                            if (sound == null)
                                sound = IESounds.revolverFire;
                            world.playSound(null, player.posX, player.posY, player.posZ, sound,
                                    SoundCategory.PLAYERS, noise, 1f);
                        } else
                            world.playSound(null, player.posX, player.posY, player.posZ,
                                    SoundEvents.BLOCK_NOTE_HAT, SoundCategory.PLAYERS, 1f, 1f);
                    } else
                        world.playSound(null, player.posX, player.posY, player.posZ, SoundEvents.BLOCK_NOTE_HAT,
                                SoundCategory.PLAYERS, 1f, 1f);

                    NonNullList<ItemStack> cycled = NonNullList.withSize(getBulletCount(revolver),
                            ItemStack.EMPTY);
                    for (int i = 1; i < cycled.size(); i++)
                        cycled.set(i - 1, bullets.get(i));
                    cycled.set(cycled.size() - 1, bullets.get(0));
                    setBullets(revolver, cycled);
                    player.inventory.markDirty();
                    ItemNBTHelper.setInt(revolver, "cooldown", getMaxShootCooldown(revolver));
                    return new ActionResult(EnumActionResult.SUCCESS, revolver);
                }
            }
        }
    } else if (!player.isSneaking() && revolver.getItemDamage() == 0) {
        if (getShootCooldown(revolver) > 0 || ItemNBTHelper.hasKey(revolver, "reload"))
            return new ActionResult(EnumActionResult.PASS, revolver);
        NonNullList<ItemStack> bullets = getBullets(revolver);
        if (!bullets.get(0).isEmpty() && bullets.get(0).getItem() instanceof ItemBullet
                && ItemNBTHelper.hasKey(bullets.get(0), "bullet")) {
            Triple<ItemStack, ShaderRegistryEntry, ShaderCase> shader = ShaderRegistry
                    .getStoredShaderAndCase(revolver);
            if (shader != null) {
                Vec3d pos = Utils.getLivingFrontPos(player, .75, player.height * .75,
                        hand == EnumHand.MAIN_HAND ? player.getPrimaryHand()
                                : player.getPrimaryHand().opposite(),
                        false, 1);
                shader.getMiddle().getEffectFunction().execute(world, shader.getLeft(), revolver,
                        shader.getRight().getShaderType(), pos, player.getForward(), .125f);
            }
        }
        return new ActionResult(EnumActionResult.SUCCESS, revolver);
    }
    return new ActionResult(EnumActionResult.SUCCESS, revolver);
}

From source file:alfio.controller.TicketController.java

@RequestMapping(value = "/event/{eventName}/ticket/{ticketIdentifier}/update", method = RequestMethod.GET)
public String showTicketForUpdate(@PathVariable("eventName") String eventName,
        @PathVariable("ticketIdentifier") String ticketIdentifier, Model model, Locale locale) {

    Optional<Triple<Event, TicketReservation, Ticket>> oData = ticketReservationManager
            .fetchCompleteAndAssigned(eventName, ticketIdentifier);
    if (!oData.isPresent()) {
        return "redirect:/event/" + eventName;
    }//from  w  w w.  j  a va2s .c  o  m
    Triple<Event, TicketReservation, Ticket> data = oData.get();
    Event event = data.getLeft();
    TicketCategory ticketCategory = ticketCategoryRepository.getByIdAndActive(data.getRight().getCategoryId(),
            event.getId());
    Organization organization = organizationRepository.getById(event.getOrganizationId());

    boolean enableFreeCancellation = configurationManager
            .getBooleanConfigValue(Configuration.from(event.getOrganizationId(), event.getId(),
                    ticketCategory.getId(), ALLOW_FREE_TICKETS_CANCELLATION), false);
    Ticket ticket = data.getRight();
    model.addAttribute("ticketAndCategory",
            Pair.of(eventManager.getTicketCategoryById(ticket.getCategoryId(), event.getId()),
                    new TicketDecorator(ticket, enableFreeCancellation,
                            eventManager.checkTicketCancellationPrerequisites().apply(ticket),
                            "ticket/" + ticket.getUuid() + "/view",
                            ticketHelper.findTicketFieldConfigurationAndValue(event.getId(), ticket, locale),
                            true, "")))//
            .addAttribute("reservation", data.getMiddle())//
            .addAttribute("reservationId",
                    ticketReservationManager.getShortReservationID(event, data.getMiddle().getId()))
            .addAttribute("event", event)//
            .addAttribute("ticketCategory", ticketCategory)//
            .addAttribute("countries", TicketHelper.getLocalizedCountries(locale))
            .addAttribute("organization", organization)//
            .addAttribute("pageTitle", "show-ticket.header.title")
            .addAttribute("useFirstAndLastName", event.mustUseFirstAndLastName());

    return "/event/update-ticket";
}

From source file:com.clust4j.algo.NNHSTests.java

License:asdf

@Test
public void testKD1() {
    final Array2DRowRealMatrix mat = new Array2DRowRealMatrix(a, false);
    KDTree kd = new KDTree(mat);

    QuadTup<double[][], int[], NodeData[], double[][][]> arrays = kd.getArrays();

    assertTrue(MatUtils.equalsExactly(arrays.getFirst(), a));
    assertTrue(VecUtils.equalsExactly(new int[] { 0, 1, 2 }, arrays.getSecond()));

    Triple<Integer, Integer, Integer> stats = kd.getTreeStats();
    assertTrue(stats.getLeft() == 0);/*from w  w w.java 2s .c om*/
    assertTrue(stats.getMiddle() == 0);
    assertTrue(stats.getRight() == 0);

    NodeData data = arrays.getThird()[0];
    assertTrue(data.idx_start == 0);
    assertTrue(data.idx_end == 3);
    assertTrue(data.is_leaf);
    assertTrue(data.radius == 1);
}