Modified getLogString with more NULL Safety

The old implementation causes a NPE if the `session` or the `project` is null in line 1102.  This new implementation of will not.

The session being NULL is plausible, because the `appendLogParameters` function, which is called in line 1111, starts with a NULL check.
diff --git a/foundation/org.eclipse.persistence.core/src/main/java/org/eclipse/persistence/queries/StoredProcedureCall.java b/foundation/org.eclipse.persistence.core/src/main/java/org/eclipse/persistence/queries/StoredProcedureCall.java
index 84b4561..165c0ee 100644
--- a/foundation/org.eclipse.persistence.core/src/main/java/org/eclipse/persistence/queries/StoredProcedureCall.java
+++ b/foundation/org.eclipse.persistence.core/src/main/java/org/eclipse/persistence/queries/StoredProcedureCall.java
@@ -1099,7 +1099,7 @@
                     session = getQuery().getSession();
                 }
                 List<String> procedureArgs = getProcedureArgumentNames();
-                boolean indexBased = procedureArgs.size() == 0 || procedureArgs.get(0) == null || session.getProject().namingIntoIndexed();
+                boolean indexBased = isIndexBased(procedureArgs, session);
                 Collection<String> parameters = new ArrayList<>();
                 for (int index = 0; index < getParameters().size(); index++) {
                     if (indexBased) {
@@ -1115,4 +1115,13 @@
             return getSQLString();
         }
     }
+
+	private boolean isIndexBased(List<String> procedureArgs, AbstractSession session) {
+    	boolean hasNoArgs = procedureArgs.size() == 0 || procedureArgs.get(0) == null;
+    	boolean isNamingIntoIndexed = false;
+    	if (session != null && session.getProject() != null) {
+    		isNamingIntoIndexed = session.getProject().namingIntoIndexed();
+    	}
+    	return hasNoArgs || isNamingIntoIndexed;
+    }
 }