]> git.proxmox.com Git - pmg-api.git/commitdiff
PMG/HTTPServer.pm - pass $format to $rpcenv
authorDietmar Maurer <dietmar@proxmox.com>
Thu, 10 Aug 2017 06:55:18 +0000 (08:55 +0200)
committerDietmar Maurer <dietmar@proxmox.com>
Thu, 10 Aug 2017 06:55:18 +0000 (08:55 +0200)
PMG/HTTPServer.pm
PMG/RESTEnvironment.pm

index 446d86affd523f373ea73525b30c9cf5644a48e2..73e24b181a2965c567506d2a4a1c37689122670b 100755 (executable)
@@ -96,9 +96,10 @@ sub auth_handler {
 }
 
 sub rest_handler {
-    my ($self, $clientip, $method, $rel_uri, $auth, $params) = @_;
+    my ($self, $clientip, $method, $rel_uri, $auth, $params, $format) = @_;
 
     my $rpcenv = $self->{rpcenv};
+    $rpcenv->set_format($format);
 
     my $resp = {
        status => HTTP_NOT_IMPLEMENTED,
@@ -170,6 +171,7 @@ sub rest_handler {
 
     $rpcenv->set_user(undef); # clear after request
     $rpcenv->set_role(undef); # clear after request
+    $rpcenv->set_format(undef); # clear after request
 
     if ($err) {
        $resp = { info => $info };
index 0fc24bd7ced4ccde440b2b336bd947a578347deb..302fa1bcbb56f7d198c3fe0b5d3e5890982516f9 100644 (file)
@@ -38,6 +38,7 @@ sub init_request {
     
     $self->{ticket} = undef;
     $self->{role} = undef;
+    $self->{format} = undef;
     $self->{cinfo} = PVE::INotify::read_file("cluster.conf");
     $self->{usercfg} = PVE::INotify::read_file("pmg-user.conf");
 }
@@ -51,6 +52,18 @@ sub setup_default_cli_env {
     $rest_env->set_role('root');
 }
 
+sub set_format {
+    my ($self, $ticket) = @_;
+
+    $self->{format} = $ticket;
+}
+
+sub get_format {
+    my ($self) = @_;
+
+    return $self->{format} // 'json';
+}
+
 sub set_ticket {
     my ($self, $ticket) = @_;