diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..e4579f6
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,27 @@
+
+ 4.0.0
+
+ ru.mcs.bot
+ udc-generate-folder
+ 1.0-SNAPSHOT
+ jar
+
+ udc-generate-folder
+ http://maven.apache.org
+
+
+ UTF-8
+ 21
+ 21
+
+
+
+
+ junit
+ junit
+ 3.8.1
+ test
+
+
+
diff --git a/script/UTCGenerateFolder.java b/script/UTCGenerateFolder.java
new file mode 100644
index 0000000..1cb3fbd
--- /dev/null
+++ b/script/UTCGenerateFolder.java
@@ -0,0 +1,32 @@
+import java.util.Locale;
+import java.util.ResourceBundle;
+
+public class UTCGenerateFolder {
+ public static void main(String[] args) {
+ Locale locale = Locale.getDefault();
+ ResourceBundle rb = ResourceBundle.getBundle("resources/udc", locale);
+ System.out.println(rb.getString("00"));
+ System.out.println(rb.getString("004"));
+ System.out.println(rb.getString("008"));
+
+ String expectedData = "Hello, world!";
+
+ Class clazz = FileOperationsTest.class;
+ InputStream inputStream = clazz.getResourceAsStream("/utc.txt");
+ String data = readFromInputStream(inputStream);
+
+ }
+
+ private String readFromInputStream(InputStream inputStream)
+ throws IOException {
+ StringBuilder resultStringBuilder = new StringBuilder();
+ try (BufferedReader br
+ = new BufferedReader(new InputStreamReader(inputStream))) {
+ String line;
+ while ((line = br.readLine()) != null) {
+ resultStringBuilder.append(line).append("\n");
+ }
+ }
+ return resultStringBuilder.toString();
+ }
+}
\ No newline at end of file
diff --git a/script/resources/udc.properties b/script/resources/udc.properties
new file mode 100644
index 0000000..e8c3da9
--- /dev/null
+++ b/script/resources/udc.properties
@@ -0,0 +1,63 @@
+00=Science in general (information technology - 004)
+001=Science in general. Science studies. Organization of mental work
+002=Printing in general. Documentation. Scientific and technical information (NTI)
+003=Writing and writing systems. Signs and symbols. Semiotics in general. Codes. Graphic representation of thought
+004=Information technology. Computer technology. Theory of computing machines and systems
+005=Study of the problem of organization: methodology, analysis, synthesis, classification and taxonomy (theory, foundations), systematization in general
+006=Standardization and standards
+007=Activity and organization. General theory of information, communication and control (cybernetics), including human activity
+008=Civilization. Culture. Progress
+009=Humanities in general
+1=Philosophy. Psychology
+101=The Essence and Tasks of Philosophy
+101.1=The Essence of Philosophy. Philosophy as a Science. Philosophy as an Art.
+101.2=The Possibilities of Philosophy. Is Philosophy Possible?
+101.3=The Subject of Philosophy
+101.8=Philosophical Methods. [Dialectical Materialism]
+101.9=The Personality and Calling (Purpose) of Philosophers
+11=Metaphysics
+122=Causality. Primordial Cause. Principles. Causa efficiens. Condition. Action. Motivation
+123=Freedom and Necessity
+124=Teleology
+125=Finity. Infinity. The Infinite and Boundless. Universe
+128=Soul. The Meaning of Life and Death
+129=The Origin and Destiny of Individual Souls. The Journey of Souls. Embodiment of the soul. Immortality of the soul
+13=Philosophy of the spirit. Metaphysics of spiritual life
+14=Philosophical systems. Metaphysical and ontological concepts
+159.9=Psychology
+16=Logic. Theory of knowledge. Methodology and logic of science
+17=Ethics. The doctrine of morality. Practical philosophy
+18=Aesthetics
+2=Religion. Theology
+30=Theory and methods of social sciences
+31=Demography. Sociology. Statistics
+32=Politics
+33=Economics. National economy. Economic sciences
+34=Law. Legal sciences
+35=Public administrative management. Military art. Military sciences
+36=Provision of spiritual and material vital needs. Social security. Social assistance. Housing. Insurance
+37=Public education. Upbringing. Training. Organization of leisure
+39=Ethnography. Morals. Customs. Life of the people. Folklore
+50=General issues of mathematical and natural sciences
+51=Mathematics
+52=Astronomy. Geodesy
+53=Physics
+54=Chemistry. Crystallography. Mineralogy
+55=Geology. Geological and geophysical sciences
+56=Paleontology
+57=Biological sciences
+58=Botany
+59=Zoology
+60=Applied sciences. General issues
+61=Medicine. Health protection. Fire fighting
+62=Engineering. Technology in general
+63=Agriculture. Forestry. Hunting. Fishing
+64=Housekeeping. Public utilities. Consumer services
+65=Enterprise management. Organization of production, trade and transport
+66=Chemical technology. Chemical industry. Food industry. Metallurgy. Related industries
+67=Various industries and crafts. Mechanical technology
+68=Various industries and crafts producing final products. Precision mechanics
+69=Construction. Construction materials. Construction and installation work
+7=Art. Decorative and applied arts. Photography. Music. Games. Sports
+8=Linguistics. Philology. Fiction. Literary criticism
+9=Geography. Biography. History
\ No newline at end of file
diff --git a/script/resources/udc.txt b/script/resources/udc.txt
new file mode 100644
index 0000000..35e7735
--- /dev/null
+++ b/script/resources/udc.txt
@@ -0,0 +1,63 @@
+00 Наука в целом (информационные технологии - 004)
+ 001 Наука в целом. Науковедение. Организация умственного труда
+ 002 Печать в целом. Документация. Научно-техническая информация (НТИ)
+ 003 Системы письма и письменности. Знаки и символы. Семиотика в целом. Коды. Графическое представление мысли
+ 004 Информационные технологии. Компьютерные технологии. Теория вычислительных машин и систем
+ 005 Изучение проблемы организации: методология, анализ, синтез, классификация и таксономия (теория, основы), систематизация в целом
+ 006 Стандартизация и стандарты
+ 007 Деятельность и организация. Общая теория информации, связи и управления (кибернетика), включая деятельность человека
+ 008 Цивилизация. Культура. Прогресс
+ 009 Гуманитарные науки в целом
+1 Философия. Психология
+ 101 Сущность и задачи философии
+ 101.1 Сущность философии. Философия как наука. Философия как искусство.
+ 101.2 Возможности философии. Возможна ли философия?
+ 101.3 Предмет философии
+ 101.8 Философские методы. [Диалектический материализм]
+ 101.9 Личность и призвание (назначение) философов
+ 11 Метафизика
+ 122 Причинность (каузальность). Первопричинность. Принципы. Causa efficiens. Условие. Действие. Побуждение
+ 123 Свобода и необходимость
+ 124 Телеология
+ 125 Конечность. Бесконечность. Бесконечное и безграничное. Универсум
+ 128 Душа. Смысл жизни и смерти
+ 129 Происхождение и судьба индивидуальных душ. Странствование душ. Воплощение души. Бессмертие души
+ 13 Философия духа. Метафизика духовной жизни
+ 14 Философские системы. Метафизико-онтологические концепции
+ 159.9 Психология
+ 16 Логика. Теория познания. Методология и логика науки
+ 17 Этика. Учение о морали. Практическая философия
+ 18 Эстетика
+2 Религия. Теология
+30 Теория и методы общественных наук
+31 Демография. Социология. Статистика
+32 Политика
+33 Экономика. Народное хозяйство. Экономические науки
+34 Право. Юридические науки
+35 Государственное административное управление. Военное искусство. Военные науки
+36 Обеспечение духовных и материальных жизненных потребностей. Социальное обеспечение. Социальная помощь. Обеспечение жильем. Страхование
+37 Народное образование. Воспитание. Обучение. Организация досуга
+39 Этнография. Нравы. Обычаи. Жизнь народа. Фольклора
+50 Общие вопросы математических и естественных наук
+51 Математика
+52 Астрономия. Геодезия
+53 Физика
+54 Химия. Кристаллография. Минералогия
+55 Геология. Геологические и геофизические науки
+56 Палеонтология
+57 Биологические науки
+58 Ботаника
+59 Зоология
+60 Прикладные науки. Общие вопросы
+61 Медицина. Охрана здоровья. Пожарное дело
+62 Инженерное дело. Техника в целом
+63 Сельское хозяйство. Лесное хозяйство. Охота. Рыбное хозяйство
+64 Домоводство. Коммунальное хозяйство. Служба быта
+65 Управление предприятиями. Организация производства, торговли и транспорта
+66 Химическая технология. Химическая промышленность. Пищевая промышленность. Металлургия. Родственные отрасли
+67 Различные отрасли промышленности и ремесла. Механическая технология
+68 Различные отрасли промышленности и ремесла, производящие конечную продукцию. Точная механика
+69 Строительство. Строительные материалы. Строительно-монтажные работы
+7 Искусство. Декоративно-прикладное искусство. Фотография. Музыка. Игры. Спорт
+8 Языкознание. Филология. Художественная литература. Литературоведение
+9 География. Биография. История
\ No newline at end of file
diff --git a/script/resources/udc_en_EN.properties b/script/resources/udc_en_EN.properties
new file mode 100644
index 0000000..e8c3da9
--- /dev/null
+++ b/script/resources/udc_en_EN.properties
@@ -0,0 +1,63 @@
+00=Science in general (information technology - 004)
+001=Science in general. Science studies. Organization of mental work
+002=Printing in general. Documentation. Scientific and technical information (NTI)
+003=Writing and writing systems. Signs and symbols. Semiotics in general. Codes. Graphic representation of thought
+004=Information technology. Computer technology. Theory of computing machines and systems
+005=Study of the problem of organization: methodology, analysis, synthesis, classification and taxonomy (theory, foundations), systematization in general
+006=Standardization and standards
+007=Activity and organization. General theory of information, communication and control (cybernetics), including human activity
+008=Civilization. Culture. Progress
+009=Humanities in general
+1=Philosophy. Psychology
+101=The Essence and Tasks of Philosophy
+101.1=The Essence of Philosophy. Philosophy as a Science. Philosophy as an Art.
+101.2=The Possibilities of Philosophy. Is Philosophy Possible?
+101.3=The Subject of Philosophy
+101.8=Philosophical Methods. [Dialectical Materialism]
+101.9=The Personality and Calling (Purpose) of Philosophers
+11=Metaphysics
+122=Causality. Primordial Cause. Principles. Causa efficiens. Condition. Action. Motivation
+123=Freedom and Necessity
+124=Teleology
+125=Finity. Infinity. The Infinite and Boundless. Universe
+128=Soul. The Meaning of Life and Death
+129=The Origin and Destiny of Individual Souls. The Journey of Souls. Embodiment of the soul. Immortality of the soul
+13=Philosophy of the spirit. Metaphysics of spiritual life
+14=Philosophical systems. Metaphysical and ontological concepts
+159.9=Psychology
+16=Logic. Theory of knowledge. Methodology and logic of science
+17=Ethics. The doctrine of morality. Practical philosophy
+18=Aesthetics
+2=Religion. Theology
+30=Theory and methods of social sciences
+31=Demography. Sociology. Statistics
+32=Politics
+33=Economics. National economy. Economic sciences
+34=Law. Legal sciences
+35=Public administrative management. Military art. Military sciences
+36=Provision of spiritual and material vital needs. Social security. Social assistance. Housing. Insurance
+37=Public education. Upbringing. Training. Organization of leisure
+39=Ethnography. Morals. Customs. Life of the people. Folklore
+50=General issues of mathematical and natural sciences
+51=Mathematics
+52=Astronomy. Geodesy
+53=Physics
+54=Chemistry. Crystallography. Mineralogy
+55=Geology. Geological and geophysical sciences
+56=Paleontology
+57=Biological sciences
+58=Botany
+59=Zoology
+60=Applied sciences. General issues
+61=Medicine. Health protection. Fire fighting
+62=Engineering. Technology in general
+63=Agriculture. Forestry. Hunting. Fishing
+64=Housekeeping. Public utilities. Consumer services
+65=Enterprise management. Organization of production, trade and transport
+66=Chemical technology. Chemical industry. Food industry. Metallurgy. Related industries
+67=Various industries and crafts. Mechanical technology
+68=Various industries and crafts producing final products. Precision mechanics
+69=Construction. Construction materials. Construction and installation work
+7=Art. Decorative and applied arts. Photography. Music. Games. Sports
+8=Linguistics. Philology. Fiction. Literary criticism
+9=Geography. Biography. History
\ No newline at end of file
diff --git a/script/resources/udc_ru_RU.properties b/script/resources/udc_ru_RU.properties
new file mode 100644
index 0000000..8b9a899
--- /dev/null
+++ b/script/resources/udc_ru_RU.properties
@@ -0,0 +1,63 @@
+00=Наука в целом (информационные технологии - 004)
+001=Наука в целом. Науковедение. Организация умственного труда
+002=Печать в целом. Документация. Научно-техническая информация (НТИ)
+003=Системы письма и письменности. Знаки и символы. Семиотика в целом. Коды. Графическое представление мысли
+004=Информационные технологии. Компьютерные технологии. Теория вычислительных машин и систем
+005=Изучение проблемы организации: методология, анализ, синтез, классификация и таксономия (теория, основы), систематизация в целом
+006=Стандартизация и стандарты
+007=Деятельность и организация. Общая теория информации, связи и управления (кибернетика), включая деятельность человека
+008=Цивилизация. Культура. Прогресс
+009=Гуманитарные науки в целом
+1=Философия. Психология
+101=Сущность и задачи философии
+101.1=Сущность философии. Философия как наука. Философия как искусство.
+101.2=Возможности философии. Возможна ли философия?
+101.3=Предмет философии
+101.8=Философские методы. [Диалектический материализм]
+101.9=Личность и призвание (назначение) философов
+11=Метафизика
+122=Причинность (каузальность). Первопричинность. Принципы. Causa efficiens. Условие. Действие. Побуждение
+123=Свобода и необходимость
+124=Телеология
+125=Конечность. Бесконечность. Бесконечное и безграничное. Универсум
+128=Душа. Смысл жизни и смерти
+129=Происхождение и судьба индивидуальных душ. Странствование душ. Воплощение души. Бессмертие души
+13=Философия духа. Метафизика духовной жизни
+14=Философские системы. Метафизико-онтологические концепции
+159.9=Психология
+16=Логика. Теория познания. Методология и логика науки
+17=Этика. Учение о морали. Практическая философия
+18=Эстетика
+2=Религия. Теология
+30=Теория и методы общественных наук
+31=Демография. Социология. Статистика
+32=Политика
+33=Экономика. Народное хозяйство. Экономические науки
+34=Право. Юридические науки
+35=Государственное административное управление. Военное искусство. Военные науки
+36=Обеспечение духовных и материальных жизненных потребностей. Социальное обеспечение. Социальная помощь. Обеспечение жильем. Страхование
+37=Народное образование. Воспитание. Обучение. Организация досуга
+39=Этнография. Нравы. Обычаи. Жизнь народа. Фольклора
+50=Общие вопросы математических и естественных наук
+51=Математика
+52=Астрономия. Геодезия
+53=Физика
+54=Химия. Кристаллография. Минералогия
+55=Геология. Геологические и геофизические науки
+56=Палеонтология
+57=Биологические науки
+58=Ботаника
+59=Зоология
+60=Прикладные науки. Общие вопросы
+61=Медицина. Охрана здоровья. Пожарное дело
+62=Инженерное дело. Техника в целом
+63=Сельское хозяйство. Лесное хозяйство. Охота. Рыбное хозяйство
+64=Домоводство. Коммунальное хозяйство. Служба быта
+65=Управление предприятиями. Организация производства, торговли и транспорта
+66=Химическая технология. Химическая промышленность. Пищевая промышленность. Металлургия. Родственные отрасли
+67=Различные отрасли промышленности и ремесла. Механическая технология
+68=Различные отрасли промышленности и ремесла, производящие конечную продукцию. Точная механика
+69=Строительство. Строительные материалы. Строительно-монтажные работы
+7=Искусство. Декоративно-прикладное искусство. Фотография. Музыка. Игры. Спорт
+8=Языкознание. Филология. Художественная литература. Литературоведение
+9=География. Биография. История
\ No newline at end of file
diff --git a/src/main/java/ru/mcs/bot/App.java b/src/main/java/ru/mcs/bot/App.java
new file mode 100644
index 0000000..a5720d7
--- /dev/null
+++ b/src/main/java/ru/mcs/bot/App.java
@@ -0,0 +1,76 @@
+package ru.mcs.bot;
+
+import java.io.*;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Locale;
+import java.util.ResourceBundle;
+
+public class App {
+ public static void main(String[] args) throws IOException {
+ Locale locale = Locale.getDefault();
+ ResourceBundle rb = ResourceBundle.getBundle("udc", locale);
+ ResourceBundle config = ResourceBundle.getBundle("config");
+
+ Class clazz = App.class;
+ InputStream inputStream = clazz.getResourceAsStream("/udc.txt");
+ createAllFolders(inputStream, rb, config.getString("library.path"));
+ }
+
+ private static void createAllFolders(InputStream inputStream, ResourceBundle rb, String libraryPath) throws IOException {
+ List pathNames = new ArrayList<>();
+ try (BufferedReader br = new BufferedReader(new InputStreamReader(inputStream))) {
+ String line;
+ int level;
+ while ((line = br.readLine()) != null) {
+ String udcCode = line.replaceAll("\\t[^\\t]+$", "");
+ if (udcCode.startsWith(" ")) {
+ level = udcCode.split(" {4}").length;
+ udcCode = udcCode.replaceAll(" ", "");
+ } else {
+ level = 1;
+ }
+ if (rb.containsKey(udcCode)) {
+ String folderName = getFolderName(rb, udcCode);
+ String directoryPath = generateFolderPath(folderName, pathNames, level);
+
+ File directory = new File(libraryPath + directoryPath);
+ boolean directoryCreated = directory.mkdir();
+
+ if (directoryCreated) {
+ System.out.println("Directory created successfully at: " + directoryPath);
+ } else {
+ System.out.println("Failed to create directory. It may already exist at: " + directoryPath);
+ }
+ pathNames.add(level - 1, folderName);
+ } else {
+ System.out.println("folderName not in resources: " + udcCode);
+ }
+ }
+ }
+ }
+
+ private static String generateFolderPath(String folderName, List pathNames, int level) {
+ StringBuilder result = new StringBuilder();
+ for (int index = 0; index < level - 1; index++) {
+ result.append("\\").append(pathNames.get(index));
+ }
+ return result.append("\\").append(folderName).toString();
+ }
+
+ private static String createFolders(String pathName) {
+ StringBuilder result = new StringBuilder();
+ List folderNames = List.of(pathName.split("//"));
+
+ for (int index = 0; index < level - 1; index++) {
+ result.append("\\").append(pathNames.get(index));
+ }
+ return result.append("\\").append(folderName).toString();
+ }
+
+ private static String getFolderName(ResourceBundle rb, String udcCode) {
+ String folderName = rb.getString(udcCode);
+ folderName = folderName.replaceAll("[/*?|<>:\"]","");
+ return folderName;
+ }
+}
\ No newline at end of file
diff --git a/src/main/resources/config.properties b/src/main/resources/config.properties
new file mode 100644
index 0000000..5a42a20
--- /dev/null
+++ b/src/main/resources/config.properties
@@ -0,0 +1 @@
+library.path=d:\library
\ No newline at end of file
diff --git a/src/main/resources/test.csv b/src/main/resources/test.csv
new file mode 100644
index 0000000..054f959
--- /dev/null
+++ b/src/main/resources/test.csv
@@ -0,0 +1,6 @@
+101.1 Сущность философии. Философия как наука. Философия как искусство.
+101.2 Возможности философии. Возможна ли философия?
+101.3 Предмет философии
+101.8 Философские методы. [Диалектический материализм]
+101.9 Личность и призвание (назначение) философов
+
\ No newline at end of file
diff --git a/src/main/resources/udc.properties b/src/main/resources/udc.properties
new file mode 100644
index 0000000..fdf9bd9
--- /dev/null
+++ b/src/main/resources/udc.properties
@@ -0,0 +1,3 @@
+00=Science in General
+00.004=Information Technology
+00.008=Civilization. Culture. Progress
\ No newline at end of file
diff --git a/src/main/resources/udc.txt b/src/main/resources/udc.txt
new file mode 100644
index 0000000..aa9b2b9
--- /dev/null
+++ b/src/main/resources/udc.txt
@@ -0,0 +1,71 @@
+00 Наука в целом (информационные технологии - 004)
+ 001 Наука в целом. Науковедение. Организация умственного труда
+ 002 Печать в целом. Документация. Научно-техническая информация (НТИ)
+ 003 Системы письма и письменности. Знаки и символы. Семиотика в целом. Коды. Графическое представление мысли
+ 004 Информационные технологии. Компьютерные технологии. Теория вычислительных машин и систем
+ 005 Изучение проблемы организации: методология, анализ, синтез, классификация и таксономия (теория, основы), систематизация в целом
+ 006 Стандартизация и стандарты
+ 007 Деятельность и организация. Общая теория информации, связи и управления (кибернетика), включая деятельность человека
+ 008 Цивилизация. Культура. Прогресс
+ 009 Гуманитарные науки в целом
+1 Философия. Психология
+ 101 Сущность и задачи философии
+ 101.1 Сущность философии. Философия как наука. Философия как искусство.
+ 101.2 Возможности философии. Возможна ли философия?
+ 101.3 Предмет философии
+ 101.8 Философские методы. [Диалектический материализм]
+ 101.9 Личность и призвание (назначение) философов
+ 11 Метафизика
+ 122 Причинность (каузальность). Первопричинность. Принципы. Causa efficiens. Условие. Действие. Побуждение
+ 123 Свобода и необходимость
+ 124 Телеология
+ 125 Конечность. Бесконечность. Бесконечное и безграничное. Универсум
+ 128 Душа. Смысл жизни и смерти
+ 129 Происхождение и судьба индивидуальных душ. Странствование душ. Воплощение души. Бессмертие души
+ 13 Философия духа. Метафизика духовной жизни
+ 14 Философские системы. Метафизико-онтологические концепции
+ 16 Логика. Теория познания. Методология и логика науки
+ 17 Этика. Учение о морали. Практическая философия
+ 18 Эстетика
+2 Религия. Теология
+ 21 Естественное богословие. Внеконфессиональная теодицея
+ 22 Библия
+ 23 Догматическое богословие
+ 24 Практическое богословие
+ 25 Пастырское богословие. Благочестие
+ 26 Христианская церковь в целом
+ 27 История христианской церкви в целом
+ 28 Христианские церкви, общины и секты
+ 29 Нехристианские религии
+30 Теория и методы общественных наук
+31 Демография. Социология. Статистика
+32 Политика
+33 Экономика. Народное хозяйство. Экономические науки
+34 Право. Юридические науки
+35 Государственное административное управление. Военное искусство. Военные науки
+36 Обеспечение духовных и материальных жизненных потребностей. Социальное обеспечение. Социальная помощь. Обеспечение жильем. Страхование
+37 Народное образование. Воспитание. Обучение. Организация досуга
+39 Этнография. Нравы. Обычаи. Жизнь народа. Фольклора
+50 Общие вопросы математических и естественных наук
+51 Математика
+52 Астрономия. Геодезия
+53 Физика
+54 Химия. Кристаллография. Минералогия
+55 Геология. Геологические и геофизические науки
+56 Палеонтология
+57 Биологические науки
+58 Ботаника
+59 Зоология
+60 Прикладные науки. Общие вопросы
+61 Медицина. Охрана здоровья. Пожарное дело
+62 Инженерное дело. Техника в целом
+63 Сельское хозяйство. Лесное хозяйство. Охота. Рыбное хозяйство
+64 Домоводство. Коммунальное хозяйство. Служба быта
+65 Управление предприятиями. Организация производства, торговли и транспорта
+66 Химическая технология. Химическая промышленность. Пищевая промышленность. Металлургия. Родственные отрасли
+67 Различные отрасли промышленности и ремесла. Механическая технология
+68 Различные отрасли промышленности и ремесла, производящие конечную продукцию. Точная механика
+69 Строительство. Строительные материалы. Строительно-монтажные работы
+7 Искусство. Декоративно-прикладное искусство. Фотография. Музыка. Игры. Спорт
+8 Языкознание. Филология. Художественная литература. Литературоведение
+9 География. Биография. История
\ No newline at end of file
diff --git a/src/main/resources/udc_en_EN.properties b/src/main/resources/udc_en_EN.properties
new file mode 100644
index 0000000..fdf9bd9
--- /dev/null
+++ b/src/main/resources/udc_en_EN.properties
@@ -0,0 +1,3 @@
+00=Science in General
+00.004=Information Technology
+00.008=Civilization. Culture. Progress
\ No newline at end of file
diff --git a/src/main/resources/udc_ru_RU.properties b/src/main/resources/udc_ru_RU.properties
new file mode 100644
index 0000000..5fbcb4d
--- /dev/null
+++ b/src/main/resources/udc_ru_RU.properties
@@ -0,0 +1,71 @@
+00=Наука в целом (информационные технологии - 004)
+001=Наука в целом. Науковедение. Организация умственного труда
+002=Печать в целом. Документация. Научно-техническая информация (НТИ)
+003=Системы письма и письменности. Знаки и символы. Семиотика в целом. Коды. Графическое представление мысли
+004=Информационные технологии. Компьютерные технологии. Теория вычислительных машин и систем
+005=Изучение проблемы организации: методология, анализ, синтез, классификация и таксономия (теория, основы), систематизация в целом
+006=Стандартизация и стандарты
+007=Деятельность и организация. Общая теория информации, связи и управления (кибернетика), включая деятельность человека
+008=Цивилизация. Культура. Прогресс
+009=Гуманитарные науки в целом
+1=Философия. Психология
+101=Сущность и задачи философии
+101.1=Сущность философии. Философия как наука. Философия как искусство.
+101.2=Возможности философии. Возможна ли философия?
+101.3=Предмет философии
+101.8=Философские методы. [Диалектический материализм]
+101.9=Личность и призвание (назначение) философов
+11=Метафизика
+122=Причинность (каузальность). Первопричинность. Принципы. Causa efficiens. Условие. Действие. Побуждение
+123=Свобода и необходимость
+124=Телеология
+125=Конечность. Бесконечность. Бесконечное и безграничное. Универсум
+128=Душа. Смысл жизни и смерти
+129=Происхождение и судьба индивидуальных душ. Странствование душ. Воплощение души. Бессмертие души
+13=Философия духа. Метафизика духовной жизни
+14=Философские системы. Метафизико-онтологические концепции
+16=Логика. Теория познания. Методология и логика науки
+17=Этика. Учение о морали. Практическая философия
+18=Эстетика
+2=Религия. Теология
+21=Естественное богословие. Внеконфессиональная теодицея
+22=Библия
+23=Догматическое богословие
+24=Практическое богословие
+25=Пастырское богословие. Благочестие
+26=Христианская церковь в целом
+27=История христианской церкви в целом
+28=Христианские церкви, общины и секты
+29=Нехристианские религии
+30=Теория и методы общественных наук
+31=Демография. Социология. Статистика
+32=Политика
+33=Экономика. Народное хозяйство. Экономические науки
+34=Право. Юридические науки
+35=Государственное административное управление. Военное искусство. Военные науки
+36=Обеспечение духовных и материальных жизненных потребностей. Социальное обеспечение. Социальная помощь. Обеспечение жильем. Страхование
+37=Народное образование. Воспитание. Обучение. Организация досуга
+39=Этнография. Нравы. Обычаи. Жизнь народа. Фольклора
+50=Общие вопросы математических и естественных наук
+51=Математика
+52=Астрономия. Геодезия
+53=Физика
+54=Химия. Кристаллография. Минералогия
+55=Геология. Геологические и геофизические науки
+56=Палеонтология
+57=Биологические науки
+58=Ботаника
+59=Зоология
+60=Прикладные науки. Общие вопросы
+61=Медицина. Охрана здоровья. Пожарное дело
+62=Инженерное дело. Техника в целом
+63=Сельское хозяйство. Лесное хозяйство. Охота. Рыбное хозяйство
+64=Домоводство. Коммунальное хозяйство. Служба быта
+65=Управление предприятиями. Организация производства, торговли и транспорта
+66=Химическая технология. Химическая промышленность. Пищевая промышленность. Металлургия. Родственные отрасли
+67=Различные отрасли промышленности и ремесла. Механическая технология
+68=Различные отрасли промышленности и ремесла, производящие конечную продукцию. Точная механика
+69=Строительство. Строительные материалы. Строительно-монтажные работы
+7=Искусство. Декоративно-прикладное искусство. Фотография. Музыка. Игры. Спорт
+8=Языкознание. Филология. Художественная литература. Литературоведение
+9=География. Биография. История
\ No newline at end of file
diff --git a/src/test/java/ru/mcs/bot/AppTest.java b/src/test/java/ru/mcs/bot/AppTest.java
new file mode 100644
index 0000000..8ac5f45
--- /dev/null
+++ b/src/test/java/ru/mcs/bot/AppTest.java
@@ -0,0 +1,34 @@
+package ru.mcs.bot;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+/**
+ * Unit test for simple App.
+ */
+public class AppTest
+ extends TestCase {
+ /**
+ * Create the test case
+ *
+ * @param testName name of the test case
+ */
+ public AppTest(String testName) {
+ super(testName);
+ }
+
+ /**
+ * @return the suite of tests being tested
+ */
+ public static Test suite() {
+ return new TestSuite(AppTest.class);
+ }
+
+ /**
+ * Rigourous Test :-)
+ */
+ public void testApp() {
+ assertTrue(true);
+ }
+}