ZOO-Project
Functions
service_internal_mono.c File Reference
#include "service_internal_mono.h"
#include "response_print.h"

Functions

int zoo_mono_support (maps **main_conf, map *request, service *s, maps **real_inputs, maps **real_outputs)
 Load a Mono dll then run the static public method corresponding to the service by passing the conf, inputs and outputs parameters. More...
 
MonoObject * ZMapsFromMaps (MonoDomain *domain, MonoClass **classes, MonoMethod **methods, MonoObject **exc, maps *m)
 Create ZMaps from maps. More...
 
MonoObject * ZMapFromMap (MonoDomain *domain, MonoClass *ZMapClass, MonoMethod **methods, MonoObject **exc, map *m)
 Create ZMap from map. More...
 
mapsmapsFromZMaps (MonoDomain *domain, MonoClass **classes, MonoMethod **methods, MonoObject *m)
 Create maps from ZMaps. More...
 
mapmapFromZMap (MonoDomain *domain, MonoClass **classes, MonoMethod **methods, MonoObject *m)
 Create map from ZMap. More...
 
static MonoString * MonoTranslate (MonoString *str)
 The translate function to search in zoo-services gettext domain for translating a string. More...
 
static void MonoUpdateStatus (MonoObject *obj, MonoString *str, int *p)
 The updateStatus function to update the ongoing status of a ZOO-Service. More...
 

Function Documentation

map* mapFromZMap ( MonoDomain *  domain,
MonoClass **  classes,
MonoMethod **  methods,
MonoObject *  m 
)

Create map from ZMap.

Parameters
domainthe Mono Domain
classesthe Mono classes required (_ZMapsClass,ZMapsClass,ZMapClass,KeysList)
methodsthe Mono methods required (ZMapsGetMaps,ZMapsGetKeysCount,ZMapsGetKey,ZMapGetMap,ZMapGetKeysCount,ZMapGetKey,_ZMapsGetContent,_ZMapsGetChild,ZMapGetSize)
mthe ZMap to use as source to create a new map
Returns
MonoObject* to a new ZMap
maps* mapsFromZMaps ( MonoDomain *  domain,
MonoClass **  classes,
MonoMethod **  methods,
MonoObject *  m 
)

Create maps from ZMaps.

Parameters
domainthe Mono Domain
classesthe Mono classes required to create (_ZMapsClass,ZMapsClass,ZMapClass,KeysList)
methodsthe Mono methods required (ZMapsGetMaps,ZMapsGetKeysCount,ZMapsGetKey,ZMapGetMap,ZMapGetKeysCount,ZMapGetKey,_ZMapsGetContent,_ZMapsGetChild)
mthe ZMaps to use as source to create a new maps
Returns
MonoObject* to a new ZMaps
static MonoString* MonoTranslate ( MonoString *  str)
static

The translate function to search in zoo-services gettext domain for translating a string.

Parameters
strthe string to be translated
Returns
the translated string
static void MonoUpdateStatus ( MonoObject *  obj,
MonoString *  str,
int *  p 
)
static

The updateStatus function to update the ongoing status of a ZOO-Service.

Parameters
mthe main.cfg map
strthe message for the current step
pthe percentage of the
Returns
the translated string
MonoObject* ZMapFromMap ( MonoDomain *  domain,
MonoClass *  ZMapClass,
MonoMethod **  methods,
MonoObject **  exc,
map m 
)

Create ZMap from map.

Parameters
domainthe Mono Domain
classesthe Mono classes required to create (_ZMaps,ZMaps and ZMap)
methodsthe Mono methods required (ZMapsAdd, _ZMapsSetContent, _ZMapsSetChild, ZMapAdd and ZMapDisplay)
excthe Mono exception object
mthe map to use as source to create a new ZMap
Returns
MonoObject* to a new ZMap
MonoObject* ZMapsFromMaps ( MonoDomain *  domain,
MonoClass **  classes,
MonoMethod **  methods,
MonoObject **  exc,
maps m 
)

Create ZMaps from maps.

Parameters
domainthe Mono Domain
classesthe Mono classes required to create (_ZMaps,ZMaps and ZMap)
methodsthe Mono methods required (ZMapsAdd, _ZMapsSetContent, _ZMapsSetChild, ZMapAdd and ZMapDisplay)
mthe maps to use as source to create the corresponding ZMaps
Returns
MonoObject* to a new ZMap
int zoo_mono_support ( maps **  main_conf,
map request,
service s,
maps **  real_inputs,
maps **  real_outputs 
)

Load a Mono dll then run the static public method corresponding to the service by passing the conf, inputs and outputs parameters.

Parameters
main_confthe conf maps containing the main.cfg settings
requestthe map containing the HTTP request
sthe service structure
real_inputsthe maps containing the inputs
real_outputsthe maps containing the outputs