summaryrefslogtreecommitdiff
path: root/matlab/lib/+Ice/Logger.m
blob: b587bb06cae30cddaeb9d674a2e0d08c9c33dac9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
classdef Logger < IceInternal.WrapperObject
    % Logger   Summary of Logger
    %
    % The Ice message logger.
    %
    % Logger Methods:
    %   print - Print a message.
    %   trace - Log a trace message.
    %   warning - Log a warning message.
    %   error - Log an error message.
    %   getPrefix - Return this logger's prefix.
    %   cloneWithPrefix - Returns a clone of the logger with a new prefix.

    % Copyright (c) ZeroC, Inc. All rights reserved.

    methods
        function obj = Logger(impl)
            if ~isa(impl, 'lib.pointer')
                throw(MException('Ice:ArgumentException', 'invalid argument'));
            end
            obj = obj@IceInternal.WrapperObject(impl);
        end
        function print(obj, message)
            % print - Print a message. The message is printed literally, without
            % any decorations such as executable name or time stamp.
            %
            % Parameters:
            %   message (char) - The message to log.

            obj.iceCall('print', message);
        end
        function trace(obj, category, message)
            % trace - Log a trace message.
            %
            % Parameters:
            %   category (char) - The trace category.
            %   message (char) - The trace message to log.

            obj.iceCall('trace', category, message);
        end
        function warning(obj, message)
            % warning - Log a warning message.
            %
            % Parameters:
            %   message - The warning message to log.

            obj.iceCall('warning', message);
        end
        function error(obj, message)
            % error - Log an error message.
            %
            % Parameters:
            %   message - The error message to log.

            obj.iceCall('error', message);
        end
        function r = getPrefix(obj)
            % getPrefix - Returns this logger's prefix.
            %
            % Returns (char) - The prefix.

            r = obj.iceCallWithResult('getPrefix');
        end
        function r = cloneWithPrefix(obj, prefix)
            % cloneWithPrefix - Returns a clone of the logger with a new prefix.
            %
            % Parameters:
            %   prefix - The new prefix for the logger.
            %
            % Returns (Ice.Logger) - A logger instance.

            impl = libpointer('voidPtr');
            obj.iceCall('cloneWithPrefix', prefix, impl);
            if isNull(impl)
                r = obj;
            else
                r = Ice.Logger(impl);
            end
        end
    end
end