/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
throws NamingException {
super(homeCtx, search_results,
cont);
// fully qualified name of starting context of search
searchArgs = args;
}
protected NameClassPair
throws NamingException {
boolean relative = true; // whether relative to currentDN
// need to strip off all but lowest component of dn
// so that is relative to current context (currentDN)
try {
// System.err.println("dn string: " + dn);
// System.err.println("dn name: " + parsed);
} else {
relative = false;
}
} catch (NamingException e) {
// could not parse name
relative = false;
}
// Name relative to search context
}
// Name relative to homeCtx
}
//System.err.println("relStart: " + cn);
//System.err.println("relHome: " + rcn);
// Fix attributes to be able to get schema
// only generate object when requested
// serialized object or object reference
}
}
// Call getObjectInstance before removing unrequested attributes
try {
// rcn is either relative to homeCtx or a fully qualified DN
} catch (NamingException e) {
throw e;
} catch (Exception e) {
new NamingException(
"problem generating object using object factory");
ne.setRootCause(e);
throw ne;
}
// remove Java attributes from result, if necessary
// Even if CLASSNAME attr not there, there might be some
// residual attributes
// create an attribute set for those requested
}
// Remove Java-object attributes if not requested
}
}
}
}
/*
* name in search result is either the stringified composite name
* relative to the search context that can be passed directly to
* methods of the search context, or the fully qualified DN
* which can be used with the initial context.
*/
sr = new SearchResultWithControls(
} else {
sr = new SearchResult(
}
return sr;
}
// a referral has been followed so do not create relative names
super.appendUnprocessedReferrals(ex);
}
protected LdapNamingEnumeration
// repeat the original operation at the new context
return (LdapSearchEnumeration)
}
// Update search-specific variables
//VR - keep original args, don't overwite with current args
// searchArgs = se.searchArgs;
}
}
}