⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pop3message.java

📁 mywork是rcp开发的很好的例子
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	 * @return	Content-ID.
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public String getContentID() throws MessagingException {
		loadHeaders();
		return super.getContentID();
	}
	
	/**
	 * Content-ID ꆼꆼꆼꆼꆼ.
	 * POP3MessageꆼRead-only ꆼꆼꆼꆼꆼꆼꆼꆼꆼ throw ꆼꆼꆼ.
	 *
	 * @param cid	ꆼꆼꆼꆼꆼ.
	 * @exception	javax.mail.IllegalWriteException	ꆼꆼ throw ꆼꆼꆼ.
	 */
	public void setContentID(String cid) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	/**
	 * Content-MD5 ꆼꆼꆼ.
	 *
	 * @return	Content-MD5.
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public String getContentMD5() throws MessagingException {
		loadHeaders();
		return super.getContentMD5();
	}
	
	/**
	 * Content-MD5 ꆼꆼꆼꆼꆼ.
	 * POP3MessageꆼRead-only ꆼꆼꆼꆼꆼꆼꆼꆼꆼ throw ꆼꆼꆼ.
	 *
	 * @param md5	ꆼꆼꆼꆼꆼ.
	 * @exception	javax.mail.IllegalWriteException	ꆼꆼ throw ꆼꆼꆼ.
	 */
	public void setContentMD5(String md5) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	/**
	 * Content-Description ꆼꆼꆼ.
	 *
	 * @return Content-Description.
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public String getDescription() throws MessagingException {
		loadHeaders();
		return super.getDescription();
	}
	
	/**
	 * Content-Description ꆼꆼꆼꆼꆼ.
	 * POP3MessageꆼRead-only ꆼꆼꆼꆼꆼꆼꆼꆼꆼ throw ꆼꆼꆼ.
	 *
	 * @param description	ꆼꆼꆼꆼꆼ.
	 * @exception	javax.mail.IllegalWriteException	ꆼꆼ throw ꆼꆼꆼ.
	 */
	public void setDescription(String description) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	/**
	 * Content-Description ꆼꆼꆼꆼꆼ.
	 * POP3MessageꆼRead-only ꆼꆼꆼꆼꆼꆼꆼꆼꆼ throw ꆼꆼꆼ.
	 *
	 * @param description	ꆼꆼꆼꆼꆼ.
	 * @param charset	ꆼꆼꆼꆼꆼ.
	 * @exception	javax.mail.IllegalWriteException	ꆼꆼ throw ꆼꆼꆼ.
	 */
	public void setDescription(String description, String charset) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	/**
	 * Content-Language ꆼꆼꆼ.
	 *
	 * @return	Content-Language.
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public String[] getContentLanguage() throws MessagingException {
		loadHeaders();
		return super.getContentLanguage();
	}
	
	/**
	 * Content-Language ꆼꆼꆼꆼꆼ.
	 * POP3MessageꆼRead-only ꆼꆼꆼꆼꆼꆼꆼꆼꆼ throw ꆼꆼꆼ.
	 *
	 * @param languages	ꆼꆼꆼꆼꆼ.
	 * @exception	javax.mail.IllegalWriteException	ꆼꆼ throw ꆼꆼꆼ.
	 */
	public void setContentLanguage(String[] languages) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	/**
	 * "Message-ID" ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.ꆼꆼꆼꆼꆼꆼꆼꆼ null ꆼꆼꆼꆼꆼ.
	 *
	 * @return	Message-ID.
	 * @exception javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public String getMessageID() throws MessagingException {
		loadHeaders();
		return super.getMessageID();
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 * "Content-Disposition" ꆼꆼꆼꆼꆼꆼꆼꆼꆼ "filename" ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ"Content-Type" ꆼꆼꆼꆼꆼꆼꆼꆼꆼ "name" ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼnull ꆼꆼꆼꆼꆼ.
	 *
	 * @return	ꆼꆼꆼꆼꆼ.
	 * @throws javax.mail.MessagingException
	 */
	public String getFileName() throws MessagingException {
		loadHeaders();
		return super.getFileName();
	}
	
	public void setFileName(String filename) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	public InputStream getInputStream() throws java.io.IOException, MessagingException {
		loadData();
		if (! isSet(Flags.Flag.SEEN)) {
			setFlag(Flags.Flag.SEEN, true);
		}
		return super.getInputStream();
	}
	
	protected InputStream getContentStream() throws MessagingException {
		loadData();
		return super.getContentStream();
	}
	
	public DataHandler getDataHandler() throws MessagingException {
		loadData();
		return super.getDataHandler();
	}
		
	public Object getContent() throws IOException, MessagingException {
		loadData();
		if (! isSet(Flags.Flag.SEEN)) {
			setFlag(Flags.Flag.SEEN, true);
		}
		return super.getContent();
	}

	public void setDataHandler(DataHandler dh) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	public void setContent(Object o, String type) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	public void setText(String text) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	public void setText(String text, String charset) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	public void setContent(Multipart mp) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 *
	 * @param	replyToAll	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ true.
	 * @return	ꆼꆼꆼꆼꆼꆼꆼ.
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public Message reply(boolean replyToAll) throws MessagingException {
		loadData();
		return super.reply(replyToAll);
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 *
	 * @param	os	ꆼꆼꆼꆼꆼꆼꆼ.
	 * @exception	java.io.IOException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public void writeTo(OutputStream os) throws IOException, MessagingException {
		loadData();
		super.writeTo(os);
	}
	
	public void writeTo(OutputStream os, String[] ignoreList) throws java.io.IOException, MessagingException {
		loadData();
		super.writeTo(os, ignoreList);
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 *
	 * @param	name	ꆼꆼꆼꆼꆼꆼ.
	 * @return	ꆼꆼꆼꆼꆼꆼ.
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public String[] getHeader(String name) throws MessagingException {
		loadHeaders();
		return super.getHeader(name);
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼdelimiter ꆼꆼꆼꆼꆼꆼ.
	 *
	 * @param	name	ꆼꆼꆼꆼ.
	 * @param	delimiter	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 * @return	ꆼꆼꆼꆼꆼꆼ.
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public String getHeader(String name, String delimiter) throws MessagingException {
		loadHeaders();
		return super.getHeader(name, delimiter);
	}
	
	public void setHeader(String name, String value) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	public void addHeader(String name, String value) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	public void removeHeader(String name) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 *
	 * @return	ꆼꆼꆼꆼꆼꆼꆼꆼ Enumeration.
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public Enumeration getAllHeaders() throws MessagingException {
		loadHeaders();
		return super.getAllHeaders();
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ
	 *
	 * @param	names	ꆼꆼꆼꆼꆼꆼ
	 * @param	ꆼꆼꆼꆼꆼꆼꆼꆼ Enumeration 
	 * @throws	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ
	 */
	public Enumeration getMatchingHeaders(String[] names) throws MessagingException {
		loadHeaders();
		return super.getMatchingHeaders(names);
	}
	
	public Enumeration getNonMatchingHeaders(String[] names) throws MessagingException {
		loadHeaders();
		return super.getNonMatchingHeaders(names);
	}
	
	public void addHeaderLine(String line) throws MessagingException {
		throw new IllegalWriteException(READ_ONLY_ERROR_MESSAGE);
	}
	
	
	public Enumeration getAllHeaderLines() throws MessagingException {
		loadHeaders();
		return super.getAllHeaderLines();
	}

	public Enumeration getMatchingHeaderLines(String[] names) throws MessagingException {
		loadHeaders();
		return super.getMatchingHeaderLines(names);
	}
	
	public Enumeration getNonMatchingHeaderLines(String[] names) throws MessagingException {
		loadHeaders();
		return super.getNonMatchingHeaderLines(names);
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼ.
	 *
	 * @return	ꆼꆼꆼ.
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public Flags getFlags() throws MessagingException {
		return ((POP3Folder) getFolder()).getMessageFlags(this);
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 *
	 * @param	flag	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 * @return	ꆼꆼꆼꆼꆼꆼꆼꆼꆼ true.
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public boolean isSet(Flags.Flag flag) throws MessagingException {
		return getFlags().contains(flag);
	}
	
	/**
	 * Flags ꆼꆼꆼꆼꆼꆼ.
	 *
	 * @param	flag
	 * @param	set
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public void setFlags(Flags flags, boolean set) throws MessagingException {
		Message[] msgs = new Message[1];
		msgs[0] = this;
		((POP3Folder) folder).setFlags(msgs, flags, set);
	}

	/**
	 * Flag ꆼꆼꆼꆼꆼꆼ.
	 *
	 * @param	flag
	 * @param	set
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	public void setFlag(Flags.Flag flag, boolean set) throws MessagingException {
		Flags flags = new Flags(flag);
		setFlags(flags, set);
	}

	public void saveChanges() throws MessagingException {
		loadData();
		super.saveChanges();
	}
	
	protected void updateHeaders() throws MessagingException {
		loadData();
		super.updateHeaders();
	}
	
	//--- ꆼꆼꆼꆼꆼꆼꆼPOP3Message ꆼꆼꆼꆼꆼꆼꆼ.
	
	/**
	 * MessageIndex ꆼꆼꆼꆼꆼ.
	 *
	 * @param	id	ꆼꆼID
	 */
	void setInternalID(Object id) {
		this.internalID = id;
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼIDꆼꆼꆼ.
	 *
	 * @return	ꆼꆼID
	 */
	Object getInternalID() {
		return internalID;
	}
	
	//取文件名
	public String getInternalFileName(){
		return ((MessageIndexElement)internalID).getFileName();
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 *
	 * @param	msgnum	ꆼꆼꆼꆼꆼꆼꆼ.
	 */
	protected void setMessageNumber(int msgnum) {
		super.setMessageNumber(msgnum);
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 *
	 * @param	expunged	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ true.
	 */
	protected void setExpunged(boolean expunged) {
		super.setExpunged(expunged);
	}
	
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 *
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	private synchronized void loadHeaders() throws MessagingException {
		if (headers != null || folder == null) {
			return;
		}
		headers = ((POP3Folder) folder).getMessageHeaders(this);
	}
		
	/**
	 * ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 *
	 * @exception	javax.mail.MessagingException	ꆼꆼꆼꆼꆼꆼꆼꆼꆼꆼ.
	 */
	private synchronized void loadData() throws MessagingException {
		loadHeaders();
		if (content != null || folder == null) {
			return;
		}
		content = ((POP3Folder) folder).getMessageContentBytes(this);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -