/** * {@inheritDoc} */ @Override public List<Entry> loadSyntaxes( Schema... schemas ) throws LdapException, IOException { List<Entry> syntaxList = new ArrayList<>(); if ( schemas == null ) { return syntaxList; } for ( Schema schema : schemas ) { String start = getSchemaDirectoryString( schema ) + SchemaConstants.SYNTAXES_PATH + "/" + "m-oid="; String end = "." + LDIF_EXT; for ( String resourcePath : RESOURCE_MAP.keySet() ) { if ( resourcePath.startsWith( start ) && resourcePath.endsWith( end ) ) { URL resource = getResource( resourcePath, "syntax LDIF file" ); LdifReader reader = new LdifReader( resource.openStream() ); LdifEntry entry = reader.next(); reader.close(); syntaxList.add( entry.getEntry() ); } } } return syntaxList; }
/** * Inject an ldif String into the server. Dn must be relative to the root. * * @param service the directory service to use * @param ldif the ldif containing entries to add to the server. * @throws Exception if there is a problem adding the entries from the LDIF */ public static void injectEntries( DirectoryService service, String ldif ) throws Exception { LdifReader reader = new LdifReader(); List<LdifEntry> entries = reader.parseLdif( ldif ); for ( LdifEntry entry : entries ) { injectEntry( entry, service ); } // And close the reader reader.close(); }
/** * Load the entries from a Ldif file recursively * @throws LdapLdifException * @throws IOException */ private static void loadEntries( File ldifFile, List<LdifEntry> entries ) throws LdapLdifException, IOException { if ( ldifFile.isDirectory() ) { File[] files = ldifFile.listFiles( ldifFilter ); for ( File f : files ) { loadEntries( f, entries ); } } else { LdifReader reader = new LdifReader(); try { entries.addAll( reader.parseLdifFile( ldifFile.getAbsolutePath() ) ); } finally { reader.close(); } } }
StringWriter writer = new StringWriter(); JsonWriter jsonWriter = new JsonWriter(writer); FileReader reader = new FileReader("entry.ldif"); LdifReader ldifReader = new LdifReader(reader); SearchResult result = ldifReader.read(); jsonWriter.write(result); System.out.println(writer.toString());
LOG.debug( I18n.msg( I18n.MSG_16006_INITIALIZING_SCHEMA ) ); InputStream in = resource.openStream(); LdifReader reader = new LdifReader( in ); LdifEntry entry = reader.next(); reader.close(); Schema schema = getSchema( entry.getEntry() ); schemaMap.put( schema.getSchemaName(), schema ); LOG.debug( I18n.msg( I18n.MSG_16007_SCHEMA_INITIALIZED, schema ) ); LOG.error( I18n.err( I18n.ERR_16009_LDIF_LOAD_FAIL, file ), le ); throw le;
LOG.debug( I18n.msg( I18n.MSG_16006_INITIALIZING_SCHEMA ) ); try ( LdifReader reader = new LdifReader( file ) ) LdifEntry entry = reader.next(); Schema schema = getSchema( entry.getEntry() ); LOG.debug( I18n.msg( I18n.MSG_16007_SCHEMA_INITIALIZED, schema ) ); LOG.error( I18n.err( I18n.ERR_16009_LDIF_LOAD_FAIL, ldifFile ), e ); throw e;
LdifReader reader = new LdifReader( ldifFile ); LdifEntry entry = reader.next(); reader.close();
sb.append( "dn:: " ).append( Base64.encode( Strings.getBytesUtf8( dnStr ) ) ).append( '\n' ); throw new LdapInvalidAttributeValueException( ResultCodeEnum.INVALID_ATTRIBUTE_SYNTAX, I18n.err( I18n.ERR_13233_ATTRIBUTE_ID_MUST_BE_A_STRING, pos + 1 ) ); throw new LdapInvalidAttributeValueException( ResultCodeEnum.INVALID_ATTRIBUTE_SYNTAX, I18n.err( I18n.ERR_13234_ATTRIBUTE_VAL_STRING_OR_BYTE, pos + 1 ) ); .err( I18n.ERR_13250_VALUE_MISSING_AT_THE_END ) ); LdifReader reader = new LdifReader(); List<LdifEntry> ldifEntries = reader.parseLdif( sb.toString() ); reader.close();
LOG.debug( I18n.msg( I18n.MSG_13407_STARTS_PARSING_LDIF ) ); if ( Strings.isEmpty( ldif ) ) List<LdifEntry> entries = parseLdif( bufferReader ); LOG.debug( I18n.msg( I18n.MSG_13403_PARSED_N_ENTRIES, Integer.valueOf( entries.size() ) ) ); LOG.error( I18n.err( I18n.ERR_13428_CANNOT_PARSE_LDIF, ne.getLocalizedMessage() ) ); throw new LdapLdifException( I18n.err( I18n.ERR_13442_ERROR_PARSING_LDIF_BUFFER ), ne );
LOG.debug( I18n.msg( I18n.MSG_13408_END_OF_LDIF ) ); String name = parseDn( line ); LdifEntry entry = createLdifEntry( schemaManager ); entry.setLengthBeforeParsing( entryLen ); entry.setOffset( entryOffset ); lowerLine = Strings.toLowerCaseAscii( line ); LOG.error( I18n.err( I18n.ERR_13401_CHANGE_NOT_ALLOWED, lineNumber ) ); throw new LdapLdifException( I18n.err( I18n.ERR_13440_NO_CHANGE ) ); control = parseControl( line.substring( "control:".length() ) ); entry.addControl( control ); controlSeen = true; operation = parseChangeType( line ); parseChange( entry, iter, operation ); changeTypeSeen = true; parseAttributeValue( entry, line, lowerLine ); type = LDIF_ENTRY;
String lowerLine = Strings.toLowerCaseAscii( line ); parseAttributeValue( entry, line, lowerLine ); parseModify( entry, iter ); return; parseModRdn( entry, iter ); String lowerLine = Strings.toLowerCaseAscii( line ); Object attributeValue = parseValue( null, line, colonIndex ); entry.setNewSuperior( Strings.utf8ToString( ( byte[] ) attributeValue ) ); LOG.error( I18n.err( I18n.ERR_13416_NEW_SUPERIOR_NEEDED, lineNumber ) ); throw new LdapLdifException( I18n.err( I18n.ERR_13455_BAD_MODDN_NO_SUPERIOR ) ); LOG.error( I18n.err( I18n.ERR_13417_UNKNOWN_OPERATION, lineNumber ) ); throw new LdapLdifException( I18n.err( I18n.ERR_13456_BAD_OPERATION ) );
if ( Strings.isEmpty( fileName ) ) String msg = I18n.err( I18n.ERR_13425_EMPTY_FILE_NAME ); LOG.error( msg ); throw new LdapLdifException( msg ); LOG.error( I18n.err( I18n.ERR_13426_CANNOT_PARSE_INEXISTANT_FILE, fileName ) ); throw new LdapLdifException( I18n.err( I18n.ERR_13464_FILENAME_NOT_FOUND, fileName ) ); new InputStreamReader( is, Charset.forName( encoding ) ) ) ) return parseLdif( bufferReader );
/** * Imports given LDIF file to the directory using given directory service and schema manager. * * @param ldifFiles * @throws Exception */ private void importLdif(List<String> ldifFiles) throws Exception { if (ldifFiles == null || ldifFiles.isEmpty()) { System.out.println("Importing default data\n"); importLdif(new LdifReader(LdapServer.class.getResourceAsStream("/" + LDIF_FILENAME_JBOSS_ORG))); } else { for (String ldifFile : ldifFiles) { System.out.println("Importing " + ldifFile + "\n"); importLdif(new LdifReader(ldifFile)); } } }
reader = new LdifReader( oldConfFile, schemaManager ); reader = new LdifReader( tempConfFile, schemaManager ); while ( reader.hasNext() ) Entry entry = reader.next().getEntry(); reader.close();
LdifReader ldifReader = new LdifReader( is ); ldifReader.close();
reader = new LdifReader( in ); if ( reader.hasNext() ) LdifEntry ldifEntry = reader.next();
if ( Strings.isEmpty( addedLine ) ) Attribute attribute = LdifReader.parseAttributeValue( addedLine ); Attribute oldAttribute = entry.get( attribute.getId() );
LdifReader reader = new LdifReader(); LdifEntry ldifEntry = reader.parseLdif( new String( data ) ).get( 0 ); Entry entry = new DefaultEntry( schemaManager, ldifEntry.getEntry() );
/** * Parse a ldif file (using the default encoding). * * @param fileName The ldif file * @return A list of entries * @throws LdapLdifException If the parsing fails */ public List<LdifEntry> parseLdifFile( String fileName ) throws LdapLdifException { return parseLdifFile( fileName, Strings.getDefaultCharsetName() ); }
LOG.debug( I18n.msg( I18n.MSG_16006_INITIALIZING_SCHEMA ) ); InputStream in = resource.openStream(); LdifReader reader = new LdifReader( in ); LdifEntry entry = reader.next(); reader.close(); Schema schema = getSchema( entry.getEntry() ); schemaMap.put( schema.getSchemaName(), schema ); LOG.debug( I18n.msg( I18n.MSG_16007_SCHEMA_INITIALIZED, schema ) ); LOG.error( I18n.err( I18n.ERR_16009_LDIF_LOAD_FAIL, file ), le ); throw le;