Package client.ws.milanas.helpers.beans

Examples of client.ws.milanas.helpers.beans.Book


    {
        super(frameTitle, parent, indexTab, messages);
        double imgHeight, imgWidth, imgProp = 0.0;
        int iniPosition, i, y, x = 0;
        int fontSize = 32;
        Book book = (Book) item;
        Font titleFont = new Font("SansSerif", Font.BOLD, fontSize);
        Font labelsFont = new Font("SansSerif", Font.BOLD, 12);
        Font urlFont = null;
        Map fontAttrs = null;       
        ArrayList<String> authors = null;
        String aut = new String();
        String aux = null;
        ArrayList<CustomerReview> reviews = null;
        ArrayList<Offer> offers = null;
               
        JDesktopPane panel = new JDesktopPane();
        JScrollPane scroll = new JScrollPane(panel, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
        Container content = getContentPane();
       
        JLabel title = new JLabel(book.getTitle());
        title.setFont(titleFont);
        title.setSize((int) title.getPreferredSize().getWidth(), (int) title.getPreferredSize().getHeight());
        while(title.getSize().getWidth() > (width - 17))
        {
            fontSize--;
            titleFont = new Font("SansSerif", Font.BOLD, fontSize);
            title.setFont(titleFont);
            title.setSize((int) title.getPreferredSize().getWidth(), (int) title.getPreferredSize().getHeight());
        }
        iniPosition = (int) (((width - 17) - title.getSize().getWidth()) / 2);
        title.setLocation(iniPosition, 0);
        panel.add(title);
       
        JLabel imgLabel = new JLabel();
        ImageIcon image = null;
        Image img = null;
        try
        {
            URL imgUrl = new URL(book.getImage());
            image = new ImageIcon(new URL(book.getImage()));
        }
        catch(MalformedURLException mue)
        {
            image = new ImageIcon("");
        }
        img = image.getImage();
        imgHeight = img.getHeight(image.getImageObserver());
        imgWidth = img.getWidth(image.getImageObserver());
        imgProp = imgHeight/imgWidth;
        if(imgHeight > 300)
        {
            imgHeight = 300;
            imgWidth = imgHeight / imgProp;
        }
        if(imgWidth > 300)
        {
            imgWidth = 300;
            imgHeight = imgWidth * imgProp;
        }
        img = img.getScaledInstance((int) imgWidth, (int) imgHeight, Image.SCALE_SMOOTH);
        image.setImage(img);
        imgLabel.setIcon(image);
        imgLabel.setSize((int) imgWidth, (int) imgHeight);
        y = (int) title.getPreferredSize().getHeight() + 10;
        imgLabel.setLocation(10, y);
        panel.add(imgLabel);
       
        x = (int) imgLabel.getSize().getWidth() + 50;
        JLabel asinLab = new JLabel(messages.getString("label.book.id"));
        asinLab.setFont(labelsFont);
        asinLab.setSize(150, 30);
        asinLab.setLocation(x, y);
        panel.add(asinLab);
        JLabel priceLab = new JLabel(messages.getString("label.price"));
        priceLab.setFont(labelsFont);
        priceLab.setSize(150, 30);
        priceLab.setLocation(x, y + 30);
        panel.add(priceLab);
        JLabel salesLab = new JLabel(messages.getString("label.rank"));
        salesLab.setFont(labelsFont);
        salesLab.setSize(150, 30);
        salesLab.setLocation(x, y + 30 * 2);
        panel.add(salesLab);
        JLabel averageLab = new JLabel(messages.getString("label.rating"));
        averageLab.setFont(labelsFont);
        averageLab.setSize(150, 30);
        averageLab.setLocation(x, y + 30 * 3);
        panel.add(averageLab);
        JLabel eanLab = new JLabel(messages.getString("label.ean"));
        eanLab.setFont(labelsFont);
        eanLab.setSize(150, 30);
        eanLab.setLocation(x, y + 30 * 4);
        panel.add(eanLab);
        JLabel isbnLab = new JLabel(messages.getString("label.isbn"));
        isbnLab.setFont(labelsFont);
        isbnLab.setSize(150, 30);
        isbnLab.setLocation(x, y + 30 * 5);
        panel.add(isbnLab);
        JLabel authorLab = new JLabel(messages.getString("label.author"));
        authorLab.setFont(labelsFont);
        authorLab.setSize(150, 30);
        authorLab.setLocation(x, y + 30 * 6);
        panel.add(authorLab);
        JLabel publisherLab = new JLabel(messages.getString("label.publisher"));
        publisherLab.setFont(labelsFont);
        publisherLab.setSize(150, 30);
        publisherLab.setLocation(x, y + 30 * 7);
        panel.add(publisherLab);
        JLabel pubDateLab = new JLabel(messages.getString("label.pub.date"));
        pubDateLab.setFont(labelsFont);
        pubDateLab.setSize(150, 30);
        pubDateLab.setLocation(x, y + 30 * 8);
        panel.add(pubDateLab);
        JLabel sumLab = new JLabel(messages.getString("label.summary"));
        sumLab.setFont(labelsFont);
        sumLab.setSize(150, 30);
        sumLab.setLocation(x, y + 30 * 9);
        panel.add(sumLab);
       
        x = x + 150;
       
        asin = new JLabel(book.getAsin());
        asin.setSize((int) asin.getPreferredSize().getWidth(), 30);
        asin.setLocation(x, y);
        panel.add(asin);
        JLabel price = new JLabel(book.getPrice());
        price.setSize((int) price.getPreferredSize().getWidth(), 30);
        price.setLocation(x, y + 30);
        panel.add(price);
        JLabel sales = new JLabel(book.getSalesRank());
        sales.setSize((int) sales.getPreferredSize().getWidth(), 30);
        sales.setLocation(x, y + 30 * 2);
        panel.add(sales);
        JLabel average = null;
        if(book.getAverageRating().equals(""))
        {
            average = new JLabel(book.getAverageRating());
        }
        else
        {
            formatter.applyPattern(messages.getString("content.rating"));
            Object[] messageArguments = {book.getAverageRating()};
            average = new JLabel(formatter.format(messageArguments));
        }
        average.setSize((int) average.getPreferredSize().getWidth(), 30);
        average.setLocation(x, y + 30 * 3);
        panel.add(average);
        JLabel ean = new JLabel(book.getEan());
        ean.setSize((int) ean.getPreferredSize().getWidth(), 30);
        ean.setLocation(x, y + 30 * 4);
        panel.add(ean);
        JLabel isbn = new JLabel(book.getIsbn());
        isbn.setSize((int) isbn.getPreferredSize().getWidth(), 30);
        isbn.setLocation(x, y + 30 * 5);
        panel.add(isbn);
        authors = book.getAuthors();
        for(i = 0; i < authors.size(); i++)
        {
            if(i < authors.size() - 1)
            {
                aut = aut + authors.get(i) + " " + messages.getString("content.author") + " ";
            }
            else
            {
                aut = aut + authors.get(i);
            }
        }
        JLabel author = new JLabel(aut);
        author.setSize((int) author.getPreferredSize().getWidth(), 30);
        author.setLocation(x, y + 30 * 6);
        panel.add(author);
        JLabel publisher = new JLabel(book.getPublisher());
        publisher.setSize((int) publisher.getPreferredSize().getWidth(), 30);
        publisher.setLocation(x, y + 30 * 7);
        panel.add(publisher);
        JLabel pubDate = new JLabel(book.getPublicationDate());
        pubDate.setSize((int) pubDate.getPreferredSize().getWidth(), 30);
        pubDate.setLocation(x, y + 30 * 8);
        panel.add(pubDate);
        JTextPane sum = new JTextPane();
        aux = book.getSummary();
        aux = aux.replaceAll("<P>", "\n\n").replaceAll("<BR>", "\n").replaceAll("<.*>", "");
        sum.setText(aux);
        sum.setEditable(false);
        sum.setSize(width - (x + 50), 200);
        sum.setPreferredSize(new Dimension(width - (x + 50), 200));
        sum.setOpaque(true);
        JScrollPane sumScroll = new JScrollPane(sum, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
        sumScroll.setLocation(x, y + 30 * 9);
        sumScroll.setSize(width - (x + 50), 210);
        sumScroll.setPreferredSize(new Dimension(width - (x + 50), 210));
        sumScroll.setBorder(BorderFactory.createLineBorder(Color.WHITE, 0));
        panel.add(sumScroll);
       
        y = y + (30 * 10) + 210;
       
        reviews = book.getReviews();
        offers = book.getOffers();
       
        if(reviews.size() > 0 || offers.size() > 0)
        {
            JLabel infoLab = new JLabel(messages.getString("label.info"));
            infoLab.setSize((int) infoLab.getPreferredSize().getWidth(), 30);
            infoLab.setLocation(10, y);
            panel.add(infoLab);
        }
       
        y = y + 30;
       
        if(reviews.size() > 0)
        {
            JDesktopPane reviewsPanel = getReviewsPanel(reviews, width, messages, formatter);
            reviewsPanel.setLocation(0, y);
            panel.add(reviewsPanel);
            y = y + (int) reviewsPanel.getSize().getHeight() + 30;
        }
       
        if(offers.size() > 0)
        {
            JDesktopPane offersPanel = getOffersPanel(offers, width, messages);
            offersPanel.setLocation(0, y);
            panel.add(offersPanel);
            y = y + (int) offersPanel.getSize().getHeight() + 30;
        }
       
        JLabel urlLab = new JLabel(messages.getString("label.info.book.url"));
        urlLab.setSize((int) urlLab.getPreferredSize().getWidth(), 30);
        urlLab.setLocation(10, y);
        panel.add(urlLab);
        //url = new JLabel(book.getUrl());
        JLabel url = new JLabel(messages.getString("label.book.url"));
        urlString = book.getUrl();
        urlFont = url.getFont();
        fontAttrs = urlFont.getAttributes();
        fontAttrs.put(TextAttribute.UNDERLINE, TextAttribute.UNDERLINE_ON);
        fontAttrs.put(TextAttribute.FOREGROUND, Color.BLUE);
        urlFont = urlFont.deriveFont(fontAttrs);
View Full Code Here


     * Parsers a response to "ItemLookup" operation from Amazon.
     * Returns the data of a book.
     */
    public Item getItemContent(Document doc)
    {
        Book book = new Book();
        CustomerReview review = null;
        Offer offer = null;
        NodeList nodes, kids1, kids2, kids3 = null;
        Node node, kid1, kid2, kid3 = null;
        int i, j, k, x = 0;
       
        nodes = doc.getElementsByTagName("ASIN");
        for(i = 0; i < nodes.getLength(); i++)
        {
            if(nodes.item(i).getParentNode().getNodeName().equals("Item"))
            {
                book.setAsin(nodes.item(i).getTextContent());
            }
        }
        nodes = doc.getElementsByTagName("DetailPageURL");
        if(nodes.getLength() > 0)
        {
            book.setUrl(nodes.item(0).getTextContent());
        }
        nodes = doc.getElementsByTagName("SalesRank");
        if(nodes.getLength() > 0)
        {
            book.setSalesRank(nodes.item(0).getTextContent());
        }
        nodes = doc.getElementsByTagName("URL");
        for(i = 0; i < nodes.getLength(); i++)
        {
            if(nodes.item(i).getParentNode().getNodeName().equals("LargeImage"))
            {
                book.setImage(nodes.item(i).getTextContent());
            }
        }
        nodes = doc.getElementsByTagName("ItemAttributes");
        if(nodes.getLength() > 0)
        {
            node = nodes.item(0);
            kids1 = node.getChildNodes();
            for(i = 0; i < kids1.getLength(); i++)
            {
                kid1 = kids1.item(i);
                if(kid1.getNodeName().equals("Author"))
                {
                    book.addAuthor(kid1.getTextContent());
                }
                if(kid1.getNodeName().equals("EAN"))
                {
                    book.setEan(kid1.getTextContent());
                }
                if(kid1.getNodeName().equals("ISBN"))
                {
                    book.setIsbn(kid1.getTextContent());
                }
                if(kid1.getNodeName().equals("ListPrice"))
                {
                    kids2 = kid1.getChildNodes();
                    for(j = 0; j < kids2.getLength(); j++)
                    {
                        kid2 = kids2.item(j);
                        if(kid2.getNodeName().equals("FormattedPrice"))
                        {
                            book.setPrice(kid2.getTextContent());
                        }
                    }
                }
                if(kid1.getNodeName().equals("PublicationDate"))
                {
                    book.setPublicationDate(kid1.getTextContent());
                }
                if(kid1.getNodeName().equals("Publisher"))
                {
                    book.setPublisher(kid1.getTextContent());
                }
                if(kid1.getNodeName().equals("Title"))
                {
                    book.setTitle(kid1.getTextContent());
                }
            }
        }
        nodes = doc.getElementsByTagName("EditorialReview");
        if(nodes.getLength() > 0)
        {
            node = nodes.item(0);
            kids1 = node.getChildNodes();
            for(i = 0; i < kids1.getLength(); i++)
            {
                kid1 = kids1.item(i);
                if(kid1.getNodeName().equals("Content"))
                {
                    book.setSummary(kid1.getTextContent());
                }
            }
        }
        nodes = doc.getElementsByTagName("AverageRating");
        if(nodes.getLength() > 0)
        {
            book.setAverageRating(nodes.item(0).getTextContent());
        }
        nodes = doc.getElementsByTagName("Review");
        for(i = 0; i < nodes.getLength(); i++)
        {
            review = new CustomerReview();
            node = nodes.item(i);
            kids1 = node.getChildNodes();
            for(j = 0; j < kids1.getLength(); j++)
            {
                kid1 = kids1.item(j);
                if(kid1.getNodeName().equals("ASIN"))
                {
                    review.setAsin(kid1.getTextContent());
                }
                if(kid1.getNodeName().equals("Rating"))
                {
                    review.setRating(kid1.getTextContent());
                }
                if(kid1.getNodeName().equals("HelpfulVotes"))
                {
                    review.setReviewVotes(kid1.getTextContent());
                }
                if(kid1.getNodeName().equals("Reviewer"))
                {
                    kids2 = kid1.getChildNodes();
                    for(k = 0; k < kids2.getLength(); k++)
                    {
                        kid2 = kids2.item(k);
                        if(kid2.getNodeName().equals("CustomerId"))
                        {
                           
                            review.setCustomerId(kid2.getTextContent());
                        }
                        if(kid2.getNodeName().equals("Name"))
                        {
                            review.setCustomerName(kid2.getTextContent());
                        }
                        if(kid2.getNodeName().equals("Nickname"))
                        {
                            review.setCustomerNick(kid2.getTextContent());
                        }
                        if(kid2.getNodeName().equals("Location"))
                        {
                            review.setCustomerLocation(kid2.getTextContent());
                        }
                    }
                }
                if(kid1.getNodeName().equals("Date"))
                {
                    review.setDate(kid1.getTextContent());
                }
                if(kid1.getNodeName().equals("Summary"))
                {
                    review.setSummary(kid1.getTextContent());
                }
                if(kid1.getNodeName().equals("Content"))
                {
                    review.setContent(kid1.getTextContent());
                }
            }
            book.addReview(review);
        }
       
        nodes = doc.getElementsByTagName("Offer");
        for(i = 0; i < nodes.getLength(); i++)
        {
            offer = new Offer();
            node = nodes.item(i);
            kids1 = node.getChildNodes();
            for(j = 0; j < kids1.getLength(); j++)
            {
                kid1 = kids1.item(j);
                if(kid1.getNodeName().equals("OfferAttributes"))
                {
                    kids2 = kid1.getChildNodes();
                    for(k = 0; k < kids2.getLength(); k++)
                    {
                        kid2 = kids2.item(k);
                        if(kid2.getNodeName().equals("Condition"))
                        {
                            offer.setCondition(kid2.getTextContent());
                        }
                    }
                }
                if(kid1.getNodeName().equals("OfferListing"))
                {
                    kids2 = kid1.getChildNodes();
                    for(k = 0; k < kids2.getLength(); k++)
                    {
                        kid2 = kids2.item(k);
                        if(kid2.getNodeName().equals("OfferListingId"))
                        {
                            offer.setId(kid2.getTextContent());
                        }
                        if(kid2.getNodeName().equals("Price"))
                        {
                            kids3 = kid2.getChildNodes();
                            for(x = 0; x < kids3.getLength(); x++)
                            {
                                kid3 = kids3.item(x);
                                if(kid3.getNodeName().equals("FormattedPrice"))
                                {
                                    offer.setPrice(kid3.getTextContent());
                                }
                            }
                        }
                    }
                }
            }
            book.addOffer(offer);
        }
        return book;
    }
View Full Code Here

TOP

Related Classes of client.ws.milanas.helpers.beans.Book

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.