Class: OPCUA::Server
- Inherits:
-
Object
- Object
- OPCUA::Server
- Defined in:
- lib/opcua/server.rb,
ext/opcua/server/server.c
Defined Under Namespace
Classes: Node, ObjectMethodNode, ObjectNode, ObjectReferenceNode, ObjectVarNode, ReferenceSubNode, ReferenceTopNode, TypeSubNode, TypeTopNode
Instance Method Summary collapse
-
#active_namespace ⇒ Object
{{{.
-
#active_namespace=(val) ⇒ Object
{{{.
-
#add_namespace(name) ⇒ Object
{{{.
-
#debug ⇒ Object
{{{.
-
#debug=(val) ⇒ Object
{{{.
-
#get(*args) ⇒ Object
{{{.
- #get_base ⇒ Object
-
#initialize ⇒ Object
constructor
{{{.
-
#namespaces ⇒ Object
{{{.
-
#objects ⇒ Object
{{{.
-
#references ⇒ Object
{{{.
-
#run ⇒ Object
{{{.
-
#types ⇒ Object
{{{.
Constructor Details
#initialize ⇒ Object
{{{
832 833 834 835 836 837 838 839 840 841 842 |
# File 'ext/opcua/server/server.c', line 832
static VALUE server_init(VALUE self) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
UA_StatusCode retval = UA_Server_run_startup(pss->master);
if (retval != UA_STATUSCODE_GOOD)
rb_raise(rb_eRuntimeError, "Server could not be started.");
return self;
}
|
Instance Method Details
#active_namespace ⇒ Object
{{{
917 918 919 920 921 |
# File 'ext/opcua/server/server.c', line 917
static VALUE server_active_namespace(VALUE self) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
return UINT2NUM(pss->default_ns);
}
|
#active_namespace=(val) ⇒ Object
{{{
922 923 924 925 926 927 928 929 930 931 |
# File 'ext/opcua/server/server.c', line 922
static VALUE server_active_namespace_set(VALUE self, VALUE val) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
if (NIL_P(val) || TYPE(val) != T_FIXNUM)
rb_raise(rb_eTypeError, "namespace is not an integer");
pss->default_ns = NUM2UINT(val);
return self;
}
|
#add_namespace(name) ⇒ Object
{{{
852 853 854 855 856 857 858 859 860 861 862 863 864 865 |
# File 'ext/opcua/server/server.c', line 852
static VALUE server_add_namespace(VALUE self, VALUE name) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
VALUE str;
str = rb_obj_as_string(name);
if (NIL_P(str) || TYPE(str) != T_STRING)
rb_raise(rb_eTypeError, "cannot convert obj to string");
char *nstr = (char *)StringValuePtr(str);
pss->default_ns = UA_Server_addNamespace(pss->master, nstr);
return INT2NUM(pss->default_ns);
}
|
#debug ⇒ Object
{{{
881 882 883 884 885 886 |
# File 'ext/opcua/server/server.c', line 881
static VALUE server_debug(VALUE self) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
return (pss->debug) ? Qtrue : Qfalse;
}
|
#debug=(val) ⇒ Object
{{{
887 888 889 890 891 892 893 894 895 896 897 898 899 |
# File 'ext/opcua/server/server.c', line 887
static VALUE server_debug_set(VALUE self, VALUE val) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
if (val == Qtrue) {
pss->config->logger = UA_Log_Stdout_;
pss->debug = Qtrue;
} else {
pss->config->logger = UA_Log_None_;
pss->debug = Qfalse;
}
return self;
}
|
#get(*args) ⇒ Object
{{{
654 655 656 657 658 659 660 661 662 |
# File 'ext/opcua/server/server.c', line 654 def get(*a) if a.length == 1 && a[0].to_s =~ /ns=(\d+);i=(.*)/ get_base $1.to_i, $2.to_i elsif a.length == 1 && a[0].to_s =~ /ns=(\d+);s=(.*)/ get_base $1.to_i, $2 else get_base *a end end |
#get_base ⇒ Object
10 |
# File 'lib/opcua/server.rb', line 10 alias_method :get_base, :get |
#namespaces ⇒ Object
{{{
900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 |
# File 'ext/opcua/server/server.c', line 900
static VALUE server_namespaces(VALUE self) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
UA_Variant value;
UA_Variant_init(&value);
UA_StatusCode retval = UA_Server_readValue(pss->master, UA_NODEID_NUMERIC(0, UA_NS0ID_SERVER_NAMESPACEARRAY), &value);
VALUE ret = Qnil;
if (retval == UA_STATUSCODE_GOOD) {
ret = extract_value(value);
}
UA_Variant_clear(&value);
RB_OBJ_FREEZE(ret);
return rb_ary_entry(ret,0);
}
|
#objects ⇒ Object
{{{
876 877 878 879 880 |
# File 'ext/opcua/server/server.c', line 876
static VALUE server_objects(VALUE self) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
return node_wrap(cObjectNode, node_alloc(pss, UA_NODEID_NUMERIC(0, UA_NS0ID_OBJECTSFOLDER)));
}
|
#references ⇒ Object
{{{
871 872 873 874 875 |
# File 'ext/opcua/server/server.c', line 871
static VALUE server_references(VALUE self) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
return node_wrap(cReferenceTopNode, node_alloc(pss, UA_NODEID_NUMERIC(0, UA_NS0ID_NONHIERARCHICALREFERENCES)));
}
|
#run ⇒ Object
{{{
843 844 845 846 847 848 849 850 851 |
# File 'ext/opcua/server/server.c', line 843
static VALUE server_run(VALUE self) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
UA_UInt16 timeout = UA_Server_run_iterate(pss->master, false);
return rb_float_new(timeout/1000.0);
}
|
#types ⇒ Object
{{{
866 867 868 869 870 |
# File 'ext/opcua/server/server.c', line 866
static VALUE server_types(VALUE self) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
return node_wrap(cTypeTopNode, node_alloc(pss, UA_NODEID_NUMERIC(0, UA_NS0ID_BASEOBJECTTYPE)));
}
|