MappingFile plugin

Размещение и доступ общих обьектов для экземпляров платформы

Версия: 1.0

Дата релиза: 13 января 2023

Список методов плагина

add

добавить обьект по имени

add(string name, string obj)
name Имя
obj Обьект для сохранения

Описание возврата: успешно

Примеры использования
<?php
// инициализация
$xhe_host = '127.0.0.1:7010';
$relative_app_dir = '..\\..\\..\\';
require($relative_app_dir.'Templates/init.php');
include($relative_app_dir.'Templates/_for_tests_.php');

$bUTF8Ver = true;
$PHP_Use_Trought_Shell = true;

// рабочая папка
$script_folder = $debug->get_cur_script_folder();
// отсносительный путь
$app_dir = realpath($script_folder.$relative_app_dir);
// тестовые данные
$test = new _for_tests_($script_folder, $mappingfile);

// начало теста
$test->echo_header('add');

$name = 'fbi';
$obj = 'foobar';
$name2 = 'brain';
$obj2 = 0.01;
$result1 = $mappingfile->add($name, $obj);
$result1 = $result1 ? 'true' : 'false';
$result2 = $mappingfile->add($name2, $obj2);
$result2 = $result2 ? 'true' : 'false';
echo 'result 1: '.$result1."\n";
echo 'result 2: '.$result2."\n";

// конец теста
echo "\n<hr><br>";

// выход
$app->quit();
?>
// связь с платформой
xhe_host = '127.0.0.1:7014'
_path = require('path')
relative_app_dir = '..\\..\\..\\'
echo = require(_path.join(relative_app_dir, 'Templates JS', 'init.js'))
_for_tests_ = require(_path.join(relative_app_dir, 'Templates JS', '_for_tests_.js'))

// рабочая папка
script_folder = debug.get_cur_script_folder()
// отсносительны йпуть
app_dir = _path.resolve(_path.join(script_folder, relative_app_dir))
// тестовые данные
test = new _for_tests_(script_folder, mappingfile)

// начало теста
test.echo_header('add')

name = 'fbi'
obj = 'foobar'
name2 = 'brain'
obj2 = 0.01
result1 = mappingfile.add(name, obj)
result2 = mappingfile.add(name2, obj2)
echo(`result 1: ${result1}\n`)
echo(`result 2: ${result2}\n`)

// конец теста
echo('\n<hr><br>')

// выход
app.quit()
# дополнительные пути
import sys, os
relative_app_dir = '..\\..\\..\\'
sys.path.append(os.path.join(relative_app_dir, 'Templates PY'))

# связь с платофрмой
xhe_host = '127.0.0.1:7010'
from xweb_human_emulator import *
from _for_tests_ import _for_tests_

# рабочая папка
script_folder = debug.get_cur_script_folder()
# относительный путь
app_dir = os.path.abspath(os.path.join(script_folder, relative_app_dir))

# тестовые данные
test = _for_tests_(script_folder, mappingfile)

# начало теста
test.echo_header('add')

name = 'fbi'
obj = 'foobar'
name2 = 'brain'
obj2 = 0.01
result1 = mappingfile.add(name, obj)
result2 = mappingfile.add(name2, obj2)
print(f'result 1: {result1}')
print(f'result 2: {result2}')

# конец теста
print('\n<hr><br>')

# выход
app.quit()

get

получить обьект по имени

get(string name)
name Имя

Описание возврата: json обьект

Примеры использования
<?php
// инициализация
$xhe_host = '127.0.0.1:7010';
$relative_app_dir = '..\\..\\..\\';
require($relative_app_dir.'Templates/init.php');
include($relative_app_dir.'Templates/_for_tests_.php');

$bUTF8Ver = true;
$PHP_Use_Trought_Shell = true;

// рабочая папка
$script_folder = $debug->get_cur_script_folder();
// отсносительный путь
$app_dir = realpath($script_folder.$relative_app_dir);
// тестовые данные
$test = new _for_tests_($script_folder, $mappingfile);

// начало теста
$test->echo_header('get');

$name = 'fbi';
$obj = 'foobar';
$result = $mappingfile->add($name, $obj);
$result = $result ? 'true' : 'false';
echo 'result: '.$result."\n";

$json = $mappingfile->get($name);
echo $json."\n";

// конец теста
echo "\n<hr><br>";

// выход
$app->quit();
?>
// связь с платформой
xhe_host = '127.0.0.1:7014'
_path = require('path')
relative_app_dir = '..\\..\\..\\'
echo = require(_path.join(relative_app_dir, 'Templates JS', 'init.js'))
_for_tests_ = require(_path.join(relative_app_dir, 'Templates JS', '_for_tests_.js'))

// рабочая папка
script_folder = debug.get_cur_script_folder()
// отсносительны йпуть
app_dir = _path.resolve(_path.join(script_folder, relative_app_dir))
// тестовые данные
test = new _for_tests_(script_folder, mappingfile)

// начало теста
test.echo_header('get')

name = 'fbi'
obj = 'foobar'
result = mappingfile.add(name, obj)
echo(`result: ${result}\n`)

json = mappingfile.get(name)
echo(`${json}\n`)

// конец теста
echo('\n<hr><br>')

// выход
app.quit()
# дополнительные пути
import sys, os
relative_app_dir = '..\\..\\..\\'
sys.path.append(os.path.join(relative_app_dir, 'Templates PY'))

# связь с платофрмой
xhe_host = '127.0.0.1:7010'
from xweb_human_emulator import *
from _for_tests_ import _for_tests_

# рабочая папка
script_folder = debug.get_cur_script_folder()
# относительный путь
app_dir = os.path.abspath(os.path.join(script_folder, relative_app_dir))

# тестовые данные
test = _for_tests_(script_folder, mappingfile)

# начало теста
test.echo_header('get')

name = 'fbi'
obj = 'foobar'
result = mappingfile.add(name, obj)
print(f'result: {result}')

json = mappingfile.get(name)
print(json)

# конец теста
print('\n<hr><br>')

# выход
app.quit()

clear_all

очистить папку с обьектами

clear_all()

Описание возврата: успешно

Примеры использования
<?php
// инициализация
$xhe_host = '127.0.0.1:7010';
$relative_app_dir = '..\\..\\..\\';
require($relative_app_dir.'Templates/init.php');
include($relative_app_dir.'Templates/_for_tests_.php');

$bUTF8Ver = true;
$PHP_Use_Trought_Shell = true;

// рабочая папка
$script_folder = $debug->get_cur_script_folder();
// отсносительный путь
$app_dir = realpath($script_folder.$relative_app_dir);
// тестовые данные
$test = new _for_tests_($script_folder, $mappingfile);

// начало теста
$test->echo_header('clear_all');

$name = 'fbi';
$obj = 'foobar';
$name2 = 'brain';
$obj2 = 0.01;
$result1 = $mappingfile->add($name, $obj);
$result1 = $result1 ? 'true' : 'false';
$result2 = $mappingfile->add($name2, $obj2);
$result2 = $result2 ? 'true' : 'false';
echo 'result 1: '.$result1."\n";
echo 'result 2: '.$result2."\n";

$cleared = $mappingfile->clear_all();
$cleared = $cleared ? 'true' : 'false';
echo 'cleared: '.$cleared."\n";

// конец теста
echo "\n<hr><br>";

// выход
$app->quit();
?>
// связь с платформой
xhe_host = '127.0.0.1:7014'
_path = require('path')
relative_app_dir = '..\\..\\..\\'
echo = require(_path.join(relative_app_dir, 'Templates JS', 'init.js'))
_for_tests_ = require(_path.join(relative_app_dir, 'Templates JS', '_for_tests_.js'))

// рабочая папка
script_folder = debug.get_cur_script_folder()
// отсносительны йпуть
app_dir = _path.resolve(_path.join(script_folder, relative_app_dir))
// тестовые данные
test = new _for_tests_(script_folder, mappingfile)

// начало теста
test.echo_header('clear_all')

name = 'fbi'
obj = 'foobar'
name2 = 'brain'
obj2 = 0.01
result1 = mappingfile.add(name, obj)
result2 = mappingfile.add(name2, obj2)
echo(`result 1: ${result1}\n`)
echo(`result 2: ${result2}\n`)

cleared = mappingfile.clear_all()
echo(`cleared: ${cleared}\n`)

// конец теста
echo('\n<hr><br>')

// выход
app.quit()
# дополнительные пути
import sys, os
relative_app_dir = '..\\..\\..\\'
sys.path.append(os.path.join(relative_app_dir, 'Templates PY'))

# связь с платофрмой
xhe_host = '127.0.0.1:7010'
from xweb_human_emulator import *
from _for_tests_ import _for_tests_

# рабочая папка
script_folder = debug.get_cur_script_folder()
# относительный путь
app_dir = os.path.abspath(os.path.join(script_folder, relative_app_dir))

# тестовые данные
test = _for_tests_(script_folder, mappingfile)

# начало теста
test.echo_header('clear_all')

name = 'fbi'
obj = 'foobar'
name2 = 'brain'
obj2 = 0.01
result1 = mappingfile.add(name, obj)
result2 = mappingfile.add(name2, obj2)
print(f'result 1: {result1}')
print(f'result 2: {result2}')

cleared = mappingfile.clear_all()
print(f'cleared: {cleared}')

# конец теста
print('\n<hr><br>')

# выход
app.quit()

save_all

сохранить все обьекты в файл

save_all(string path)
path Путь к файлу

Описание возврата: успешно

Примеры использования
<?php
// инициализация
$xhe_host = '127.0.0.1:7010';
$relative_app_dir = '..\\..\\..\\';
require($relative_app_dir.'Templates/init.php');
include($relative_app_dir.'Templates/_for_tests_.php');

$bUTF8Ver = true;
$PHP_Use_Trought_Shell = true;

// рабочая папка
$script_folder = $debug->get_cur_script_folder();
// отсносительный путь
$app_dir = realpath($script_folder.$relative_app_dir);
// тестовые данные
$test = new _for_tests_($script_folder, $mappingfile);

// начало теста
$test->echo_header('save_all');

$name = 'fbi';
$obj = 'foobar';
$name2 = 'brain';
$obj2 = 0.01;
$result1 = $mappingfile->add($name, $obj);
$result1 = $result1 ? 'true' : 'false';
$result2 = $mappingfile->add($name2, $obj2);
$result2 = $result2 ? 'true' : 'false';
echo 'result 1: '.$result1."\n";
echo 'result 2: '.$result2."\n";

$containerName = 'testContainer';
$containerFullPath = $test->get_test_file_full_path($containerName);
$saved = $mappingfile->save_all($containerFullPath);
$saved = $saved ? 'true' : 'false';
echo 'saved: '.$saved."\n";

// конец теста
echo "\n<hr><br>";

// выход
$app->quit();
?>
// связь с платформой
xhe_host = '127.0.0.1:7014'
_path = require('path')
relative_app_dir = '..\\..\\..\\'
echo = require(_path.join(relative_app_dir, 'Templates JS', 'init.js'))
_for_tests_ = require(_path.join(relative_app_dir, 'Templates JS', '_for_tests_.js'))

// рабочая папка
script_folder = debug.get_cur_script_folder()
// отсносительны йпуть
app_dir = _path.resolve(_path.join(script_folder, relative_app_dir))
// тестовые данные
test = new _for_tests_(script_folder, mappingfile)

// начало теста
test.echo_header('save_all')

name = 'fbi'
obj = 'foobar'
name2 = 'brain'
obj2 = 0.01
result1 = mappingfile.add(name, obj)
result2 = mappingfile.add(name2, obj2)
echo(`result 1: ${result1}\n`)
echo(`result 2: ${result2}\n`)

containerName = 'testContainer'
containerFullPath = test.get_test_file_full_path(containerName)
saved = mappingfile.save_all(containerFullPath)
echo(`saved: ${saved}\n`)

// конец теста
echo('\n<hr><br>')

// выход
app.quit()
# дополнительные пути
import sys, os
relative_app_dir = '..\\..\\..\\'
sys.path.append(os.path.join(relative_app_dir, 'Templates PY'))

# связь с платофрмой
xhe_host = '127.0.0.1:7010'
from xweb_human_emulator import *
from _for_tests_ import _for_tests_

# рабочая папка
script_folder = debug.get_cur_script_folder()
# относительный путь
app_dir = os.path.abspath(os.path.join(script_folder, relative_app_dir))

# тестовые данные
test = _for_tests_(script_folder, mappingfile)

# начало теста
test.echo_header('save_all')

name = 'fbi'
obj = 'foobar'
name2 = 'brain'
obj2 = 0.01
result1 = mappingfile.add(name, obj)
result2 = mappingfile.add(name2, obj2)
print(f'result 1: {result1}')
print(f'result 2: {result2}')

containerName = 'testContainer'
containerFullPath = test.get_test_file_full_path(containerName)
saved = mappingfile.save_all(containerFullPath)
print(f'saved: {saved}')

# конец теста
print('\n<hr><br>')

# выход
app.quit()

load_all

загрузить все обьекты из файла

load_all(string path)
path Путь к файлу

Описание возврата: успешно

Примеры использования
<?php
// инициализация
$xhe_host = '127.0.0.1:7010';
$relative_app_dir = '..\\..\\..\\';
require($relative_app_dir.'Templates/init.php');
include($relative_app_dir.'Templates/_for_tests_.php');

$bUTF8Ver = true;
$PHP_Use_Trought_Shell = true;

// рабочая папка
$script_folder = $debug->get_cur_script_folder();
// отсносительный путь
$app_dir = realpath($script_folder.$relative_app_dir);
// тестовые данные
$test = new _for_tests_($script_folder, $mappingfile);

// начало теста
$test->echo_header('load_all');

$name = 'fbi';
$obj = 'foobar';
$name2 = 'brain';
$obj2 = 0.01;
$result1 = $mappingfile->add($name, $obj);
$result1 = $result1 ? 'true' : 'false';
$result2 = $mappingfile->add($name2, $obj2);
$result2 = $result2 ? 'true' : 'false';
echo 'result 1: '.$result1."\n";
echo 'result 2: '.$result2."\n";

$containerName = 'testContainer';
$containerFullPath = $test->get_test_file_full_path($containerName);
$saved = $mappingfile->save_all($containerFullPath);
$saved = $saved ? 'true' : 'false';
echo 'saved: '.$saved."\n";

$cleared = $mappingfile->clear_all();
$cleared = $cleared ? 'true' : 'false';
$loaded = $mappingfile->load_all($containerFullPath);
$loaded = $loaded ? 'true' : 'false';
echo 'cleared: '.$cleared."\n";
echo 'loaded: '.$loaded."\n";

// конец теста
echo "\n<hr><br>";

// выход
$app->quit();
?>
// связь с платформой
xhe_host = '127.0.0.1:7014'
_path = require('path')
relative_app_dir = '..\\..\\..\\'
echo = require(_path.join(relative_app_dir, 'Templates JS', 'init.js'))
_for_tests_ = require(_path.join(relative_app_dir, 'Templates JS', '_for_tests_.js'))

// рабочая папка
script_folder = debug.get_cur_script_folder()
// отсносительны йпуть
app_dir = _path.resolve(_path.join(script_folder, relative_app_dir))
// тестовые данные
test = new _for_tests_(script_folder, mappingfile)

// начало теста
test.echo_header('load_all')

name = 'fbi'
obj = 'foobar'
name2 = 'brain'
obj2 = 0.01
result1 = mappingfile.add(name, obj)
result2 = mappingfile.add(name2, obj2)
echo(`result 1: ${result1}\n`)
echo(`result 2: ${result2}\n`)

containerName = 'testContainer'
containerFullPath = test.get_test_file_full_path(containerName)
saved = mappingfile.save_all(containerFullPath)
echo(`saved: ${saved}\n`)

cleared = mappingfile.clear_all()
loaded = mappingfile.load_all(containerFullPath)
echo(`cleared: ${cleared}\n`)
echo(`loaded: ${loaded}\n`)

// конец теста
echo('\n<hr><br>')

// выход
app.quit()
# дополнительные пути
import sys, os
relative_app_dir = '..\\..\\..\\'
sys.path.append(os.path.join(relative_app_dir, 'Templates PY'))

# связь с платофрмой
xhe_host = '127.0.0.1:7010'
from xweb_human_emulator import *
from _for_tests_ import _for_tests_

# рабочая папка
script_folder = debug.get_cur_script_folder()
# относительный путь
app_dir = os.path.abspath(os.path.join(script_folder, relative_app_dir))

# тестовые данные
test = _for_tests_(script_folder, mappingfile)

# начало теста
test.echo_header('load_all')

name = 'fbi'
obj = 'foobar'
name2 = 'brain'
obj2 = 0.01
result1 = mappingfile.add(name, obj)
result2 = mappingfile.add(name2, obj2)
print(f'result 1: {result1}')
print(f'result 2: {result2}')

containerName = 'testContainer'
containerFullPath = test.get_test_file_full_path(containerName)
saved = mappingfile.save_all(containerFullPath)
print(f'saved: {saved}')

cleared = mappingfile.clear_all()
loaded = mappingfile.load_all(containerFullPath)
print(f'cleared: {cleared}')
print(f'loaded: {loaded}')

# конец теста
print('\n<hr><br>')

# выход
app.quit()