Sha256: 0385e619efcf3ad85065dec2734cea1ae4fe0b82c280e91b65a3f77a346e04f8

Contents?: true

Size: 1.98 KB

Versions: 30

Compression:

Stored size: 1.98 KB

Contents

require_dependency "zuora_connect/application_controller"

module ZuoraConnect
  class Api::V1::AppInstanceController < ApplicationController

    def create
      Apartment::Tenant.create(session['AppInstance'])
      respond_to do |format|
        format.json {render :json => "Created"}
      end
    end

    def drop
      instance_id = @appinstance.id
      if session["#{instance_id}::destroy"] && ZuoraConnect::AppInstance.where(:id => instance_id).size != 0
        if @appinstance.drop_instance
          ZuoraConnect::AppInstance.destroy(instance_id)
          msg = Apartment::Tenant.drop(instance_id)

          respond_to do |format|
            if msg.error_message.present?
              format.json {render json: {"message" => msg.error_message}, status: :bad_request }
            else
              format.json {render json: {}, status: :ok}
            end
          end
        else
          respond_to do |format|
            format.json {render json: {"message" => @appinstance.drop_message}, status: :bad_request}
          end
        end
      else
        respond_to do |format|
          format.json { render json: { "message" => "Unauthorized"}, status:  :unauthorized }
        end
      end
    end

    def status


    end

    def cache_bust
      if defined?(Redis.current)
        @appinstance.fetch_connect_data   #Fetch data and set in database if kms key is used
        @appinstance.cache_app_instance(force_cache: true)  #Update cache in redis
        Redis.current.del("AppInstance:#{@appinstance.id}")
        @appinstance.cache_app_instance(force_cache: true)  #Update cache in redis
        #TODO: Could be a chance another thread cache back to old value, but will eventually cache will get consitent, move to nolonger needing redis cache

        respond_to do |format|
          format.json {render json: {}, status: :ok}
        end
      else
        respond_to do |format|
          format.json {render json: {}, status: :bad_request}
        end
      end
    end

  end
end

Version data entries

30 entries across 30 versions & 1 rubygems

Version Path
zuora_connect-3.2.11 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.2.10 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.2.9 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.2.8 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.2.7 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.2.6 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.2.5 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.2.4 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.2.3 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.2.2 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.2.0 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.1.5.pre.g app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.1.5.pre.f app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.1.5.pre.e app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.1.5.pre.d app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.1.5.pre.c app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.1.5.pre.b app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.1.5.pre.a app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.1.5 app/controllers/zuora_connect/api/v1/app_instance_controller.rb
zuora_connect-3.1.4 app/controllers/zuora_connect/api/v1/app_instance_controller.rb