Example usage for org.apache.commons.net.nntp SimpleNNTPHeader toString

List of usage examples for org.apache.commons.net.nntp SimpleNNTPHeader toString

Introduction

In this page you can find the example usage for org.apache.commons.net.nntp SimpleNNTPHeader toString.

Prototype

@Override
public String toString() 

Source Link

Document

Converts the SimpleNNTPHeader to a properly formatted header in the form of a String, including the blank line used to separate the header from the article body.

Usage

From source file:examples.nntp.post.java

public final static void main(String[] args) {
    String from, subject, newsgroup, filename, server, organization;
    String references;/*from  w  w  w  . ja  v  a2 s  . c o m*/
    BufferedReader stdin;
    FileReader fileReader = null;
    SimpleNNTPHeader header;
    NNTPClient client;

    if (args.length < 1) {
        System.err.println("Usage: post newsserver");
        System.exit(1);
    }

    server = args[0];

    stdin = new BufferedReader(new InputStreamReader(System.in));

    try {
        System.out.print("From: ");
        System.out.flush();

        from = stdin.readLine();

        System.out.print("Subject: ");
        System.out.flush();

        subject = stdin.readLine();

        header = new SimpleNNTPHeader(from, subject);

        System.out.print("Newsgroup: ");
        System.out.flush();

        newsgroup = stdin.readLine();
        header.addNewsgroup(newsgroup);

        while (true) {
            System.out.print("Additional Newsgroup <Hit enter to end>: ");
            System.out.flush();

            // Of course you don't want to do this because readLine() may be null
            newsgroup = stdin.readLine().trim();

            if (newsgroup.length() == 0)
                break;

            header.addNewsgroup(newsgroup);
        }

        System.out.print("Organization: ");
        System.out.flush();

        organization = stdin.readLine();

        System.out.print("References: ");
        System.out.flush();

        references = stdin.readLine();

        if (organization != null && organization.length() > 0)
            header.addHeaderField("Organization", organization);

        if (references != null && organization.length() > 0)
            header.addHeaderField("References", references);

        header.addHeaderField("X-Newsreader", "NetComponents");

        System.out.print("Filename: ");
        System.out.flush();

        filename = stdin.readLine();

        try {
            fileReader = new FileReader(filename);
        } catch (FileNotFoundException e) {
            System.err.println("File not found. " + e.getMessage());
            System.exit(1);
        }

        client = new NNTPClient();
        client.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out)));

        client.connect(server);

        if (!NNTPReply.isPositiveCompletion(client.getReplyCode())) {
            client.disconnect();
            System.err.println("NNTP server refused connection.");
            System.exit(1);
        }

        if (client.isAllowedToPost()) {
            Writer writer = client.postArticle();

            if (writer != null) {
                writer.write(header.toString());
                Util.copyReader(fileReader, writer);
                writer.close();
                client.completePendingCommand();
            }
        }

        fileReader.close();

        client.logout();

        client.disconnect();
    } catch (IOException e) {
        e.printStackTrace();
        System.exit(1);
    }
}

From source file:examples.nntp.PostMessage.java

public static void main(String[] args) {
    String from, subject, newsgroup, filename, server, organization;
    String references;//  w w w .  java  2  s  .  co  m
    BufferedReader stdin;
    FileReader fileReader = null;
    SimpleNNTPHeader header;
    NNTPClient client;

    if (args.length < 1) {
        System.err.println("Usage: post newsserver");
        System.exit(1);
    }

    server = args[0];

    stdin = new BufferedReader(new InputStreamReader(System.in));

    try {
        System.out.print("From: ");
        System.out.flush();

        from = stdin.readLine();

        System.out.print("Subject: ");
        System.out.flush();

        subject = stdin.readLine();

        header = new SimpleNNTPHeader(from, subject);

        System.out.print("Newsgroup: ");
        System.out.flush();

        newsgroup = stdin.readLine();
        header.addNewsgroup(newsgroup);

        while (true) {
            System.out.print("Additional Newsgroup <Hit enter to end>: ");
            System.out.flush();

            // Of course you don't want to do this because readLine() may be null
            newsgroup = stdin.readLine().trim();

            if (newsgroup.length() == 0) {
                break;
            }

            header.addNewsgroup(newsgroup);
        }

        System.out.print("Organization: ");
        System.out.flush();

        organization = stdin.readLine();

        System.out.print("References: ");
        System.out.flush();

        references = stdin.readLine();

        if (organization != null && organization.length() > 0) {
            header.addHeaderField("Organization", organization);
        }

        if (references != null && references.length() > 0) {
            header.addHeaderField("References", references);
        }

        header.addHeaderField("X-Newsreader", "NetComponents");

        System.out.print("Filename: ");
        System.out.flush();

        filename = stdin.readLine();

        try {
            fileReader = new FileReader(filename);
        } catch (FileNotFoundException e) {
            System.err.println("File not found. " + e.getMessage());
            System.exit(1);
        }

        client = new NNTPClient();
        client.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out), true));

        client.connect(server);

        if (!NNTPReply.isPositiveCompletion(client.getReplyCode())) {
            client.disconnect();
            System.err.println("NNTP server refused connection.");
            System.exit(1);
        }

        if (client.isAllowedToPost()) {
            Writer writer = client.postArticle();

            if (writer != null) {
                writer.write(header.toString());
                Util.copyReader(fileReader, writer);
                writer.close();
                client.completePendingCommand();
            }
        }

        if (fileReader != null) {
            fileReader.close();
        }

        client.logout();

        client.disconnect();
    } catch (IOException e) {
        e.printStackTrace();
        System.exit(1);
    }
}

From source file:com.almarsoft.GroundhogReader.lib.MessagePosterLib.java

private String createHeaderData() throws EncoderException {
    String references, from, name, email, date;

    Date now = new Date();
    Format formatter = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z", Locale.US);
    date = formatter.format(now);// w w w . jav  a 2s.co m

    Charset headerCharset = CharsetUtil.getCharset(mPostCharset);

    String tmpName = mPrefs.getString("name", "anonymous");
    if (EncoderUtil.hasToBeEncoded(tmpName, 0)) {
        name = EncoderUtil.encodeEncodedWord(tmpName, EncoderUtil.Usage.TEXT_TOKEN, 0, headerCharset, null);
    } else
        name = tmpName;

    email = "<" + mPrefs.getString("email", "nobody@nobody.no").trim() + ">";
    from = name + " " + email;

    if (EncoderUtil.hasToBeEncoded(mSubject, 0)) {
        mSubject = EncoderUtil.encodeEncodedWord(mSubject, EncoderUtil.Usage.TEXT_TOKEN, 0, headerCharset,
                null);
    }
    //mSubject = EncoderUtil.encodeIfNecessary(mSubject, EncoderUtil.Usage.TEXT_TOKEN, 0);

    SimpleNNTPHeader header = new SimpleNNTPHeader(from, mSubject);
    String[] groups = mGroups.trim().split(",");

    for (String group : groups) {
        header.addNewsgroup(group);
    }

    header.addHeaderField("Date", date);
    header.addHeaderField("Content-Type",
            "text/plain; charset=" + CharsetUtil.toMimeCharset(mPostCharset) + "; format=flowed");
    header.addHeaderField("Content-Transfer-Encoding", "8bit");

    if (mReferences != null) {
        if (mPrevMsgId != null) {
            references = mReferences + " " + mPrevMsgId;
            header.addHeaderField("In-Reply-To", mPrevMsgId);
        } else {
            references = mReferences;
        }
        header.addHeaderField("References", references);
    }

    mMyMsgId = generateMsgId();
    header.addHeaderField("Message-ID", mMyMsgId);
    header.addHeaderField("User-Agent", "Groundhog Newsreader for Android");
    return header.toString();

}

From source file:ProtocolRunner.java

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed
    // ok for multiple value dialog:
    String fromText     = fromField.getText();
    String subjectText  = subjectField.getText();
    String variableText = variableField.getText();
    String messageText  = messageArea.getText();
        //from  w w  w  .  j  a  v  a 2 s.  c  o  m
    DotTerminatedMessageWriter writer;
              
    int selection = tcpSelectionBox.getSelectedIndex();
    try{
        if(selection == 5) { // means handling NNTP posting of message
            writer = (DotTerminatedMessageWriter)
                ((NNTPClient)tcpClient).postArticle();             
                
            if(writer == null) { 
                tcpServerResponse.append(
                    ((NNTPClient)tcpClient).getReplyString() + "\r\n");
                return;
            }
                
            // create simple NNTP headers
            SimpleNNTPHeader headers = 
                new SimpleNNTPHeader(fromText, subjectText);
            headers.addNewsgroup(variableText);
                
            // and write the message on
            writer.write(headers.toString());
            writer.write(messageText);
            writer.close();
            ((NNTPClient)tcpClient).completePendingCommand();                
            tcpServerResponse.append(
                ((NNTPClient)tcpClient).getReplyString() + "\r\n");                
        } else if(selection == 7) { // means handling SMTP posting of message
                
            ((SMTPClient)tcpClient).setSender(fromText);
            ((SMTPClient)tcpClient).addRecipient(variableText);

            writer = (DotTerminatedMessageWriter) 
                ((SMTPClient)tcpClient).sendMessageData();                
                
            if(writer == null) {
                tcpServerResponse.append(
                    ((SMTPClient)tcpClient).getReplyString() + "\r\n");
                return;
            }
                
            // create Simple SMTP header
            SimpleSMTPHeader headers = 
                new SimpleSMTPHeader(fromText, variableText, subjectText);
                
            writer.write(headers.toString());
            writer.write(messageText);
            writer.close();
            ((SMTPClient)tcpClient).completePendingCommand();
            tcpServerResponse.append(
                ((SMTPClient)tcpClient).getReplyString() + "\r\n");                
        }
    }catch(IOException ioex) { showError(ioex.getMessage()); }
    finally{ 
        fromField.setText(""); 
        subjectField.setText(""); 
        variableField.setText(""); 
        messageArea.setText("");
        multipleValueDialog.setVisible(false);
    }
}

From source file:org.apache.common.net.examples.nntp.PostMessage.java

public final static void main(String[] args) {
    String from, subject, newsgroup, filename, server, organization;
    String references;/*ww w  .j  a  v a2 s . c o  m*/
    BufferedReader stdin;
    FileReader fileReader = null;
    SimpleNNTPHeader header;
    NNTPClient client;

    if (args.length < 1) {
        System.err.println("Usage: post newsserver");
        System.exit(1);
    }

    server = args[0];

    stdin = new BufferedReader(new InputStreamReader(System.in));

    try {
        System.out.print("From: ");
        System.out.flush();

        from = stdin.readLine();

        System.out.print("Subject: ");
        System.out.flush();

        subject = stdin.readLine();

        header = new SimpleNNTPHeader(from, subject);

        System.out.print("Newsgroup: ");
        System.out.flush();

        newsgroup = stdin.readLine();
        header.addNewsgroup(newsgroup);

        while (true) {
            System.out.print("Additional Newsgroup <Hit enter to end>: ");
            System.out.flush();

            // Of course you don't want to do this because readLine() may be null
            newsgroup = stdin.readLine().trim();

            if (newsgroup.length() == 0) {
                break;
            }

            header.addNewsgroup(newsgroup);
        }

        System.out.print("Organization: ");
        System.out.flush();

        organization = stdin.readLine();

        System.out.print("References: ");
        System.out.flush();

        references = stdin.readLine();

        if (organization != null && organization.length() > 0) {
            header.addHeaderField("Organization", organization);
        }

        if (references != null && references.length() > 0) {
            header.addHeaderField("References", references);
        }

        header.addHeaderField("ProcessExecutorHelper-Newsreader", "NetComponents");

        System.out.print("Filename: ");
        System.out.flush();

        filename = stdin.readLine();

        try {
            fileReader = new FileReader(filename);
        } catch (FileNotFoundException e) {
            System.err.println("File not found. " + e.getMessage());
            System.exit(1);
        }

        client = new NNTPClient();
        client.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out), true));

        client.connect(server);

        if (!NNTPReply.isPositiveCompletion(client.getReplyCode())) {
            client.disconnect();
            System.err.println("NNTP server refused connection.");
            System.exit(1);
        }

        if (client.isAllowedToPost()) {
            Writer writer = client.postArticle();

            if (writer != null) {
                writer.write(header.toString());
                Util.copyReader(fileReader, writer);
                writer.close();
                client.completePendingCommand();
            }
        }

        if (fileReader != null) {
            fileReader.close();
        }

        client.logout();

        client.disconnect();
    } catch (IOException e) {
        e.printStackTrace();
        System.exit(1);
    }
}

From source file:org.apache.commons.net.examples.nntp.PostMessage.java

public static void main(String[] args) {
    String from, subject, newsgroup, fileName, server, organization;
    String references;/*from  w w  w.  j a  va 2 s.c o m*/
    BufferedReader stdin;
    FileReader fileReader = null;
    SimpleNNTPHeader header;
    NNTPClient client;

    if (args.length < 1) {
        System.err.println("Usage: post newsserver");
        System.exit(1);
    }

    server = args[0];

    stdin = new BufferedReader(new InputStreamReader(System.in));

    try {
        System.out.print("From: ");
        System.out.flush();

        from = stdin.readLine();

        System.out.print("Subject: ");
        System.out.flush();

        subject = stdin.readLine();

        header = new SimpleNNTPHeader(from, subject);

        System.out.print("Newsgroup: ");
        System.out.flush();

        newsgroup = stdin.readLine();
        header.addNewsgroup(newsgroup);

        while (true) {
            System.out.print("Additional Newsgroup <Hit enter to end>: ");
            System.out.flush();

            newsgroup = stdin.readLine();
            if (newsgroup == null) {
                break;
            }

            newsgroup = newsgroup.trim();

            if (newsgroup.length() == 0) {
                break;
            }

            header.addNewsgroup(newsgroup);
        }

        System.out.print("Organization: ");
        System.out.flush();

        organization = stdin.readLine();

        System.out.print("References: ");
        System.out.flush();

        references = stdin.readLine();

        if (organization != null && organization.length() > 0) {
            header.addHeaderField("Organization", organization);
        }

        if (references != null && references.length() > 0) {
            header.addHeaderField("References", references);
        }

        header.addHeaderField("X-Newsreader", "NetComponents");

        System.out.print("Filename: ");
        System.out.flush();

        fileName = stdin.readLine();

        try {
            fileReader = new FileReader(fileName);
        } catch (FileNotFoundException e) {
            System.err.println("File not found. " + e.getMessage());
            System.exit(1);
        }

        client = new NNTPClient();
        client.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out), true));

        client.connect(server);

        if (!NNTPReply.isPositiveCompletion(client.getReplyCode())) {
            client.disconnect();
            System.err.println("NNTP server refused connection.");
            System.exit(1);
        }

        if (client.isAllowedToPost()) {
            Writer writer = client.postArticle();

            if (writer != null) {
                writer.write(header.toString());
                Util.copyReader(fileReader, writer);
                writer.close();
                client.completePendingCommand();
            }
        }

        if (fileReader != null) {
            fileReader.close();
        }

        client.logout();

        client.disconnect();
    } catch (IOException e) {
        e.printStackTrace();
        System.exit(1);
    }
}