package com.perforce.p4java_ext; import com.perforce.p4java.exception.P4JavaException; import com.perforce.p4java.server.IOptionsServer; import java.util.HashMap; import java.util.Map; /** * Mimics running "p4 passwd". */ public interface P4Passwd extends P4Connection, P4Errors { static P4Passwd create(P4Connection conn) { return new DefaultP4Passwd(conn); } /** * Change the password of the current user. * * @param oldPassword * @param newPassword */ default void changePasswd(String oldPassword, String newPassword) { try { Map<String, Object> passwdMap = new HashMap<String, Object>(); passwdMap.put("oldPassword", oldPassword); passwdMap.put("newPassword", newPassword); passwdMap.put("newPassword2", newPassword); String[] opts = {}; IOptionsServer server = getOptionsServer(); Map<String, Object>[] results = server.execMapCmd("passwd", opts, passwdMap); checkError(results); } catch (P4JavaException e) { throw new P4Exception(e); } } /** * This variation should be run as the super user, which is probably only * done while initializing a new perforce depot. */ default void changeUserPasswd(String userId, String oldPassword, String newPassword) { try { Map<String, Object> passwdMap = new HashMap<String, Object>(); passwdMap.put("oldPassword", oldPassword); passwdMap.put("newPassword", newPassword); passwdMap.put("newPassword2", newPassword); String[] opts = {userId}; IOptionsServer server = getOptionsServer(); Map<String, Object>[] results = server.execMapCmd("passwd", opts, passwdMap); checkError(results); } catch (P4JavaException e) { throw new P4Exception(e); } } }
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#2 | 9086 | tjuricek |
0.1.0 Initial release of p4java_ext Mostly just contains enough of the P4 API to build the test data initializer. About 4 commands have minimal testing, so it works. Kind of. |
||
#1 | 9085 | tjuricek | First import of the project, before package refactoring. |