    # File lib/fog/bin.rb, line 20
          def available?
            availability = true
            for service in services
              begin
                service = self.class_for(service)
                availability &&= service.requirements.all? { |requirement| Fog.credentials.include?(requirement) }
              rescue ArgumentError => e
                Fog::Logger.warning(e.message)
                availability = false
              rescue => e
                availability = false
              end
            end

            if availability
              for service in services
                for collection in self.class_for(service).collections
                  unless self.respond_to?(collection)
                    self.class_eval "def self.\#{collection}\nself[:\#{service}].\#{collection}\nend\n", __FILE__, __LINE__
                  end
                end
              end
            end

            availability
          end