public DocumentHandlerMapping(DoccoFileFilter fileFilter, DocumentHandler docHandler) { if (fileFilter == null) { throw new IllegalArgumentException( GuiMessages.getString( "DocumentHandlerMapping.illegalArgumentMessageFilterMustNotBeNull.text")); //$NON-NLS-1$ } if (docHandler == null) { throw new IllegalArgumentException( GuiMessages.getString( "DocumentHandlerMapping.illegalArgumentMessageDocumentHandlerMustNotBeNull.text")); //$NON-NLS-1$ } this.fileFilter = fileFilter; this.docHandler = docHandler; }
public DocumentHandlerMapping(String serialForm) throws ClassNotFoundException { int firstColonIndex = serialForm.indexOf(':'); int lastColonIndex = serialForm.lastIndexOf(':'); String fileFilterClassName = serialForm.substring(0, firstColonIndex); String filterExpression = serialForm.substring(firstColonIndex + 1, lastColonIndex); String docHandlerClassName = serialForm.substring(lastColonIndex + 1); FileFilterFactory fileFilterFactory = FileFilterFactoryRegistry.getFileFilterFactoryByName(fileFilterClassName); if (fileFilterFactory == null) { throw new ClassNotFoundException( MessageFormat.format( GuiMessages.getString("DocumentHandlerMapping.fileFilterTypeNotFoundError.text"), new Object[] {fileFilterClassName})); // $NON-NLS-1$ } this.docHandler = DocumentHandlerRegistry.getDocumentHandlerByName(docHandlerClassName); if (docHandler == null) { throw new ClassNotFoundException( MessageFormat.format( GuiMessages.getString("DocumentHandlerMapping.documentHandlerNotFoundError.text"), new Object[] {docHandlerClassName})); // $NON-NLS-1$ } this.fileFilter = fileFilterFactory.createNewFilter(filterExpression); }