Hide Forgot
Affects: Documentation (Ref Guide, User Guide, etc.) Complexity: Low project_key: SOA SOA-2333 is resolved in the ER3 build - getAdmin() now returns an object: groovy:000> getAdmin() ===> org.teiid.adminapi.AdminFactory$AdminProxy@ce796 The manner in which this object can be used/accessed is not intuitive - the on-line help reads: groovy:000> adminhelp getAdmin /* Get the current org.teiid.adminapi.Admin instance for direct use. Note: Used for advanced usecases to bypass AdminShell methods */ Admin getAdmin() The on-line help is correct in that it cannot be used in the adminshell: groovy:000> getAdmin().getConnectionName() ERROR groovy.lang.MissingMethodException: No signature of method: $Proxy7.getConnectionName() is applicable for argument types: () values: [] at groovysh_evaluate.run (groovysh_evaluate:3) But - if we are going to refer to "advanced usecases" in the on-line help, we should include a pointer to the cases. Also - if the getAdmin() is not usable in the adminshell, can we remove it from the adminhelp() method output?
The confusion is that AdminShell and an Admin connection are two different things. Additional methods/functionality/signatures exist on AdminShell that don't exist on an Admin connection. The intent behind AdminShell is to make an Admin connection contextual and provide methods that simplify calls - rather than using an InputStream, a call can be made with a String that can be a URL or file path. However if someone is so inclined they could use the same scripting environment to script against the Admin connection directly using getAdmin(). In this scenario they are directly using the API defined by the org.teiid.adminapi.Admin object. That's why it's called an advanced scenario. We can still remove it from help, and document the call elsewhere, if this is seen as a major usability issue.
Candidate for SOA 5.1.0
Assigning to Van for clarification : Perhaps this could be added to the "AdminShell Frequently Asked Questions" in the DS Administration Guide - would this be a good place to put it in the upstream docs as well ? Am I correct in thinking that the difference between "AdminShell" & "Admin connection" is that "AdminShell" is essentially a wrapper around an "Admin connection" that provides high-level "user-friendly" commands ? To use "Admin Connection" they would need to refer to the javadocs for org.teiid.adminapi.Admin for details of what methods etc are available ? Do we have any likely usecases where this is needed ? Or is it a "just in case you need it" type of thing ?
Yes, Yes and Yes. Will add to the FAQ. The reason you need is providing the flexibility to the user. We have provided few wrapper methods that team thought are useful, but more often than not, users use these APIs in much more complicated ways, and these wrappers not sufficient in the cases. For example, to deploy a VDB, wrapper provides deployVDB(String fileName) Where as it is defined on the Admin interface as deployVDB(InputStream stream) using the direct API method, they can stream the VDB contents from any source.
Done.
Teiid committed the changes to its 7.1.x product branch.
Assigning to Darrin to get this information into the admin guide.
Usability and customer sat is important, thus this is made a blocker for SOA 5.1.
Labels: Added: DS_Administration_Guide
Complexity: Added: Low Affects: Added: [Documentation (Ref Guide, User Guide, etc.)]
Per the SOA-P Triage meeting, the plan is to release note this JIRA and site that fact that the start-up time is longer due to added services in in SOA-P 5.1. Given this approach, and the fact that you get more but you pay more at start time, we are establishing a new, longer start time benchmark with v5.1.
Writer: Added: Darrin
this was picked up when syncing with upstream docs
Release Notes Docs Status: Added: Not Required