<commit_before>package org.rapidoid.plugins;

import org.rapidoid.plugins.spec.DBPlugin;
import org.rapidoid.plugins.spec.EntitiesPlugin;
import org.rapidoid.plugins.spec.LanguagesPlugin;
import org.rapidoid.plugins.spec.LifecyclePlugin;
import org.rapidoid.plugins.spec.UsersPlugin;

/*
 * #%L
 * rapidoid-plugins
 * %%
 * Copyright (C) 2014 - 2015 <NAME>
 * %%
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * #L%
 */

/**
 * @author <NAME>
 * @since 3.0.0
 */
public final class Plugins {

	static DBPlugin db() {
		return null;
	}

	static EntitiesPlugin entities() {
		return null;
	}

	static LanguagesPlugin languages() {
		return null;
	}

	static UsersPlugin users() {
		return null;
	}

	static LifecyclePlugin lifecycle() {
		return null;
	}

}<commit_msg>Initializing the abstract plugins as default (abstract) implementations.<commit_after>package org.rapidoid.plugins;

import org.rapidoid.plugins.impl.AbstractDBPlugin;
import org.rapidoid.plugins.impl.AbstractEntitiesPlugin;
import org.rapidoid.plugins.impl.AbstractLanguagesPlugin;
import org.rapidoid.plugins.impl.AbstractLifecyclePlugin;
import org.rapidoid.plugins.impl.AbstractUsersPlugin;
import org.rapidoid.plugins.spec.DBPlugin;
import org.rapidoid.plugins.spec.EntitiesPlugin;
import org.rapidoid.plugins.spec.LanguagesPlugin;
import org.rapidoid.plugins.spec.LifecyclePlugin;
import org.rapidoid.plugins.spec.UsersPlugin;

/*
 * #%L
 * rapidoid-plugins
 * %%
 * Copyright (C) 2014 - 2015 <NAME>
 * %%
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * #L%
 */

/**
 * @author <NAME>
 * @since 3.0.0
 */
public final class Plugins {

	private static volatile LifecyclePlugin lifecyclePlugin = new AbstractLifecyclePlugin();
	private static volatile LanguagesPlugin languagesPlugin = new AbstractLanguagesPlugin();
	private static volatile DBPlugin dbPlugin = new AbstractDBPlugin();
	private static volatile EntitiesPlugin entitiesPlugin = new AbstractEntitiesPlugin();
	private static volatile UsersPlugin usersPlugin = new AbstractUsersPlugin();

	static DBPlugin db() {
		return dbPlugin;
	}

	static EntitiesPlugin entities() {
		return entitiesPlugin;
	}

	static LanguagesPlugin languages() {
		return languagesPlugin;
	}

	static UsersPlugin users() {
		return usersPlugin;
	}

	static LifecyclePlugin lifecycle() {
		return lifecyclePlugin;
	}

}
{'fraction_non_alphanumeric': 0.0918580375782881, 'fraction_numerical': 0.008947211452430659, 'mean_word_length': 4.418416801292407, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3955752', 'n_tokens_mistral': 989, 'n_tokens_neox': 938, 'n_words': 314}