private JdbcTemplate jdbc()

in app/src/main/java/com/amazon/aws/partners/saasfactory/pgrls/service/TenantServiceImpl.java [69:87]


	private JdbcTemplate jdbc() {
		JdbcTemplate jdbc = new JdbcTemplate(repo.dataSource());

		Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
		if (authentication != null && !(authentication instanceof AnonymousAuthenticationToken)) {
			LOGGER.info("Spring current tenant = '{}'", ((Tenant) authentication.getPrincipal()).getId());
		}
		try (Connection conn = jdbc.getDataSource().getConnection(); Statement stmt = conn.createStatement()) {
			ResultSet rs = stmt.executeQuery("SHOW app.current_tenant");
			rs.next();
			String connectionCurrentTenant = rs.getString(1);
			rs.close();
			LOGGER.info("PostgreSQL current tenant = '{}' on {}", connectionCurrentTenant, jdbc.getDataSource().toString());
		} catch (SQLException e) {
			LOGGER.error("Error fetching PostgreSQL session variable app.current_tenant", e);
		}

		return jdbc;
	}