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
-
#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
{{{
807 808 809 810 811 812 813 814 815 816 817 |
# File 'ext/opcua/server/server.c', line 807
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
#add_namespace(name) ⇒ Object
{{{
827 828 829 830 831 832 833 834 835 836 837 838 839 840 |
# File 'ext/opcua/server/server.c', line 827
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 self;
}
|
#debug ⇒ Object
{{{
856 857 858 859 860 861 |
# File 'ext/opcua/server/server.c', line 856
static VALUE server_debug(VALUE self) { //{{{
server_struct *pss;
Data_Get_Struct(self, server_struct, pss);
return (pss->debug) ? Qtrue : Qfalse;
}
|
#debug=(val) ⇒ Object
{{{
862 863 864 865 866 867 868 869 870 871 872 873 874 |
# File 'ext/opcua/server/server.c', line 862
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
{{{
635 636 637 638 639 640 641 642 643 |
# File 'ext/opcua/server/server.c', line 635 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
{{{
875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 |
# File 'ext/opcua/server/server.c', line 875
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
{{{
851 852 853 854 855 |
# File 'ext/opcua/server/server.c', line 851
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
{{{
846 847 848 849 850 |
# File 'ext/opcua/server/server.c', line 846
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
{{{
818 819 820 821 822 823 824 825 826 |
# File 'ext/opcua/server/server.c', line 818
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
{{{
841 842 843 844 845 |
# File 'ext/opcua/server/server.c', line 841
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)));
}
|