Compare commits

..

No commits in common. "0.17" and "0.8" have entirely different histories.
0.17 ... 0.8

36 changed files with 163 additions and 221 deletions

View file

@ -2,21 +2,20 @@
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="test"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17">
<attributes>
<attribute name="module" value="true"/>
<attribute name="owner.project.facets" value="java"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/>
<classpathentry kind="lib" path="lib/Logs/log4j-1.2.17.jar" sourcepath="lib/Logs/log4j-1.2.17-source.zip"/>
<classpathentry kind="lib" path="lib/UnitTesting/hamcrest-core-1.3.jar" sourcepath="lib/UnitTesting/hamcrest-core-1.3-sources.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
<attributes>
<attribute name="owner.project.facets" value="java"/>
</attributes>
</classpathentry>
<classpathentry kind="lib" path="lib/Logs/slf4j-api-1.7.25.jar" sourcepath="lib/Logs/slf4j-api-1.7.25-sources.jar"/>
<classpathentry kind="lib" path="lib/Logs/slf4j-log4j12-1.7.25.jar" sourcepath="lib/Logs/slf4j-log4j12-1.7.25-sources.jar"/>
<classpathentry kind="lib" path="lib/UnitTesting/junit-4.12.jar" sourcepath="lib/Logs/log4j-1.2.17-source.zip"/>
<classpathentry kind="lib" path="lib/commons-io-2.11.0.jar" sourcepath="lib/commons-io-2.11.0-sources.jar"/>
<classpathentry kind="lib" path="lib/commons-lang3-3.12.0.jar" sourcepath="lib/commons-lang3-3.12.0-sources.jar"/>
<classpathentry kind="lib" path="lib/devinsy-cmdexec-0.17.0.jar" sourcepath="lib/devinsy-cmdexec-0.17.0-sources.zip"/>
<classpathentry kind="lib" path="lib/devinsy-strings-0.17.0.jar" sourcepath="lib/devinsy-strings-0.17.0-sources.zip"/>
<classpathentry kind="lib" path="lib/commons-io-2.6.jar" sourcepath="lib/commons-io-2.6-sources.jar"/>
<classpathentry kind="lib" path="lib/commons-lang3-3.7.jar" sourcepath="lib/commons-lang3-3.7-sources.jar"/>
<classpathentry kind="lib" path="lib/devinsy-cmdexec-0.8.1.jar" sourcepath="lib/devinsy-cmdexec-0.8.1-sources.zip"/>
<classpathentry kind="lib" path="lib/devinsy-strings-0.8.2.jar" sourcepath="lib/devinsy-strings-0.8.2-sources.zip"/>
<classpathentry kind="output" path="bin"/>
</classpath>

View file

@ -10,20 +10,16 @@ org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes=
org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes=
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=17
org.eclipse.jdt.core.compiler.compliance=1.8
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
org.eclipse.jdt.core.compiler.release=enabled
org.eclipse.jdt.core.compiler.source=17
org.eclipse.jdt.core.compiler.source=1.8
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
@ -31,20 +27,17 @@ org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_c
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
org.eclipse.jdt.core.formatter.alignment_for_assignment=0
org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49
org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
@ -128,12 +121,11 @@ org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
@ -163,8 +155,6 @@ org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=inser
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
@ -189,17 +179,13 @@ org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
@ -246,8 +232,6 @@ org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do n
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
@ -284,12 +268,9 @@ org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not inser
org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
@ -315,10 +296,6 @@ org.eclipse.jdt.core.formatter.tabulation.char=tab
org.eclipse.jdt.core.formatter.tabulation.size=4
org.eclipse.jdt.core.formatter.use_on_off_tags=false
org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true

View file

@ -3,5 +3,5 @@
<fixed facet="jst.java"/>
<fixed facet="jst.utility"/>
<installed facet="jst.utility" version="1.0"/>
<installed facet="jst.java" version="17"/>
<installed facet="jst.java" version="1.8"/>
</faceted-project>

View file

@ -11,8 +11,8 @@ This software is released under the GNU LGPL.
## Requirements
- Java 11
- Eclipse 4.16 (202006).
- Java 1.6
- Eclipse Kepler
## Context
Several useful Java classes.

View file

@ -1,3 +1,3 @@
#Build Number for ANT. Do not edit!
#Thu Oct 14 18:12:14 CEST 2021
build.number=1
#Thu May 04 22:58:25 CEST 2017
build.number=0

View file

@ -1,3 +1,3 @@
product.name=devinsy-unix
product.revision.major=0
product.revision.minor=17
product.revision.minor=8

Binary file not shown.

BIN
devinsy-strings-0.8.2.jar Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
lib/commons-io-2.6.jar Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
lib/commons-lang3-3.7.jar Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -144,8 +144,10 @@ public class EtcGroupFile extends ChangeableFile
return result;
}
/* (non-Javadoc)
* @see fr.devinsy.unix.util.ChangeableFile#refresh()
/**
* This method returns the updated groups.
*
* @return the groups
*/
@Override
public void refresh()

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2006-2021 Christian Pierre MOMON
* Copyright (C) 2006-2010,2013-2014,2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -65,7 +65,7 @@ public class EtcGroupFileReader
Group group = new Group();
group.setName(tokens[0]);
group.setPassword(tokens[1]);
group.setGid(Integer.valueOf(tokens[2]).intValue());
group.setGid((new Integer(tokens[2])).intValue());
// Manage the case of empty shell.
if (tokens.length == 4)
@ -105,3 +105,5 @@ public class EtcGroupFileReader
return result;
}
}
// ////////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2006-2021 Christian Pierre MOMON
* Copyright (C) 2006-2010,2013-2014,2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -18,10 +18,15 @@
*/
package fr.devinsy.unix;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import fr.devinsy.unix.util.ChangeableFile;
/**
* The Class EtcPasswdFile.
*
* @author Christian Pierre MOMON (christian.momon@devinsy.fr)
*/
public class EtcPasswdFile extends ChangeableFile
{
@ -31,6 +36,8 @@ public class EtcPasswdFile extends ChangeableFile
private static final EtcPasswdFile instance = new EtcPasswdFile();
}
private static final Logger logger = LoggerFactory.getLogger(EtcPasswdFile.class);
private Users users;
/**
@ -99,8 +106,10 @@ public class EtcPasswdFile extends ChangeableFile
return result;
}
/* (non-Javadoc)
* @see fr.devinsy.unix.util.ChangeableFile#refresh()
/**
* Updated users.
*
* @return the users
*/
@Override
public void refresh()
@ -143,3 +152,5 @@ public class EtcPasswdFile extends ChangeableFile
return result;
}
}
// ////////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2006-2021 Christian Pierre MOMON
* Copyright (C) 2006-2010,2013-2014,2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -28,6 +28,7 @@ import org.slf4j.LoggerFactory;
/**
* The Class EtcPasswdFileReader.
*
* @author Christian Pierre MOMON (christian.momon@devinsy.fr)
*/
public class EtcPasswdFileReader
{
@ -65,8 +66,8 @@ public class EtcPasswdFileReader
User user = new User();
user.setLogin(tokens[0]);
user.setPassword(tokens[1]);
user.setUid(Integer.valueOf(tokens[2]).intValue());
user.setGid(Integer.valueOf(tokens[3]).intValue());
user.setUid((new Integer(tokens[2])).intValue());
user.setGid((new Integer(tokens[3])).intValue());
user.setRealName(tokens[4]);
user.setHomeDirectory(tokens[5]);
@ -108,3 +109,5 @@ public class EtcPasswdFileReader
return result;
}
}
// ////////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2006-2021 Christian Pierre MOMON
* Copyright (C) 2006-2010,2013-2014,2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -23,6 +23,7 @@ import java.util.Vector;
/**
* The Class Group.
*
* @author Christian Pierre MOMON (christian.momon@devinsy.fr)
*/
public class Group
{
@ -88,9 +89,7 @@ public class Group
}
/**
* Gets the members.
*
* @return the members
*/
public Vector<String> getMembers()
{
@ -103,9 +102,7 @@ public class Group
}
/**
* Gets the name.
*
* @return the name
*/
public String getName()
{
@ -118,9 +115,7 @@ public class Group
}
/**
* Gets the password.
*
* @return the password
*/
public String getPassword()
{
@ -133,9 +128,7 @@ public class Group
}
/**
* Gid.
*
* @return the int
*/
public int gid()
{
@ -148,9 +141,7 @@ public class Group
}
/**
* Members.
*
* @return the vector
*/
public Vector<String> members()
{
@ -163,9 +154,7 @@ public class Group
}
/**
* Name.
*
* @return the string
*/
public String name()
{
@ -178,9 +167,7 @@ public class Group
}
/**
* Passwd.
*
* @return the string
*/
public String passwd()
{
@ -193,10 +180,7 @@ public class Group
}
/**
* Sets the gid.
*
* @param gid
* the new gid
*/
public void setGid(final int gid)
{
@ -204,10 +188,7 @@ public class Group
}
/**
* Sets the name.
*
* @param name
* the new name
*/
public void setName(final String name)
{
@ -215,10 +196,7 @@ public class Group
}
/**
* Sets the passwd.
*
* @param password
* the new passwd
*/
public void setPasswd(final String password)
{
@ -226,10 +204,7 @@ public class Group
}
/**
* Sets the password.
*
* @param password
* the new password
*/
public void setPassword(final String password)
{
@ -250,3 +225,5 @@ public class Group
return result;
}
}
// ////////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2006-2021 Christian Pierre MOMON
* Copyright (C) 2006-2010,2013-2014,2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -24,9 +24,11 @@ import java.util.Vector;
/**
* The Class Groups.
*
* @author Christian Pierre MOMON (christian.momon@devinsy.fr)
*/
public class Groups extends Vector<Group>
{
private static final long serialVersionUID = 5802487312198869603L;
// static private final Logger logger =
@ -89,11 +91,7 @@ public class Groups extends Vector<Group>
}
/**
* Gets the by gid.
*
* @param gid
* the gid
* @return the by gid
*/
public Group getByGid(final int gid)
{
@ -252,3 +250,5 @@ public class Groups extends Vector<Group>
return result;
}
}
// ////////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2006-2021 Christian Pierre MOMON
* Copyright (C) 2006-2010,2013-2015,2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -35,6 +35,7 @@ import fr.devinsy.unix.acl.AclManager;
/**
* The Class Unix.
*
* @author Christian Pierre MOMON (christian.momon@devinsy.fr)
*/
public class Unix
{
@ -50,8 +51,8 @@ public class Unix
* the text
* @param path
* the path
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void appendToFile(final String text, final String path) throws UnixException
{
@ -98,15 +99,6 @@ public class Unix
return result;
}
/**
* Bash.
*
* @param command
* the command
* @return the string
* @throws CmdExecException
* the cmd exec exception
*/
public static String bash(final String... command) throws CmdExecException
{
String result;
@ -131,8 +123,8 @@ public class Unix
* the changes
* @param path
* the path
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void chmod(final String changes, final String path) throws UnixException
{
@ -165,8 +157,8 @@ public class Unix
* the id
* @param filePathName
* the file path name
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void clearAcl(final String id, final String filePathName) throws UnixException
{
@ -180,8 +172,8 @@ public class Unix
* the group
* @param filePathName
* the file path name
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void clearAclGroup(final String group, final String filePathName) throws UnixException
{
@ -195,8 +187,8 @@ public class Unix
* the login
* @param filePathName
* the file path name
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void clearAclUser(final String login, final String filePathName) throws UnixException
{
@ -208,8 +200,8 @@ public class Unix
*
* @param login
* the login
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void createUserAccount(final String login) throws UnixException
{
@ -230,8 +222,8 @@ public class Unix
* the login
* @param name
* the name
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void createUserAccount(final String login, final String name) throws UnixException
{
@ -258,8 +250,8 @@ public class Unix
* the name
* @param home
* the home
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void createUserAccount(final String login, final String name, final String home) throws UnixException
{
@ -303,8 +295,8 @@ public class Unix
* the home
* @param password
* the password
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void createUserAccount(final String login, final String name, final String home, final String password) throws UnixException
{
@ -328,8 +320,8 @@ public class Unix
*
* @param group
* the group
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void deleteGroup(final String group) throws UnixException
{
@ -354,12 +346,7 @@ public class Unix
}
/**
* Delete user account.
*
* @param login
* the login
* @throws UnixException
* the unix exception
*/
public static void deleteUserAccount(final String login) throws UnixException
{
@ -415,8 +402,8 @@ public class Unix
* @param filePathName
* the file path name
* @return the acl data
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static String getAclData(final String filePathName) throws UnixException
{
@ -434,8 +421,8 @@ public class Unix
* @param filePathName
* the file path name
* @return the acl users
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static String[] getAclUsers(final String filePathName) throws UnixException
{
@ -490,8 +477,8 @@ public class Unix
* the source path
* @param targetPath
* the target path
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void link(final String sourcePath, final String targetPath) throws UnixException
{
@ -537,8 +524,8 @@ public class Unix
* the target login
* @param sourceHomeDirectory
* the source home directory
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void modifyLogin(final String sourceLogin, final String targetLogin, final String sourceHomeDirectory) throws UnixException
{
@ -614,8 +601,8 @@ public class Unix
* the changes
* @param path
* the path
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void recursiveChmod(final String changes, final String path) throws UnixException
{
@ -741,14 +728,14 @@ public class Unix
*
* @param args
* the new facl
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static void setfacl(final String... args) throws UnixException
{
try
{
String[] command = ArrayUtils.insert(0, args, "setfacl");
String[] command = ArrayUtils.add(args, 0, "setfacl");
sudo(command);
}
catch (CmdExecException exception)
@ -758,8 +745,8 @@ public class Unix
}
/**
* As 'passwd' command has not the option '--stdin' in all systems (eg.
* Debian), this method uses the 'chpasswd' command.
* As 'passwd' command has not the option '--stdin' in all systems (eg. Debian),
* this method uses the 'chpasswd' command.
*
* @param login
* the login
@ -801,7 +788,6 @@ public class Unix
* @param newRealName
* the new real name
* @throws UnixException
* the unix exception
*/
public static void setRealName(final String login, final String newRealName) throws UnixException
{
@ -868,7 +854,7 @@ public class Unix
if (SystemUtils.IS_OS_UNIX)
{
String[] newCommand = ArrayUtils.insert(0, command, SUDO);
String[] newCommand = ArrayUtils.add(command, 0, SUDO);
result = CmdExecUtils.run(newCommand);
}
else
@ -959,3 +945,5 @@ public class Unix
}
}
}
// ////////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2006-2021 Christian Pierre MOMON
* Copyright (C) 2006-2010,2013-2014,2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -21,6 +21,7 @@ package fr.devinsy.unix;
/**
* The Class User.
*
* @author Christian Pierre MOMON (christian.momon@devinsy.fr)
*/
public class User
{
@ -408,3 +409,5 @@ public class User
return result;
}
}
// ////////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2006-2021 Christian Pierre MOMON
* Copyright (C) 2006-2010,2013-2014,2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -24,6 +24,7 @@ import java.util.Vector;
/**
* The Class Users.
*
* @author Christian Pierre MOMON (christian.momon@devinsy.fr)
*/
public class Users extends Vector<User>
{
@ -40,12 +41,8 @@ public class Users extends Vector<User>
super();
}
/**
* Adds the all.
*
* @param source
* the source
* @return true, if successful
/* (non-Javadoc)
* @see java.util.Vector#addAll(java.util.Collection)
*/
public boolean addAll(final Users source)
{
@ -215,3 +212,5 @@ public class Users extends Vector<User>
return result;
}
}
// ////////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2010-2021 Christian Pierre MOMON
* Copyright (C) 2010,2013-2015,2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -118,7 +118,6 @@ public class AclManager
* the file path name
* @return the acl
* @throws UnixException
* the unix exception
*/
public static Acl getAcl(final String filePathName) throws UnixException
{
@ -220,8 +219,6 @@ public class AclManager
* @param filePathName
* the file path name
* @return the acl data
* @throws UnixException
* the unix exception
*/
public static String getAclData(final String filePathName) throws UnixException
{
@ -302,7 +299,8 @@ public class AclManager
* the depth
* @return true, if is used
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static boolean isUsed(final AclEntry.Type type, final String id, final String filePathName, final int depth) throws UnixException
{
@ -356,7 +354,6 @@ public class AclManager
* the depth
* @return true, if is used
* @throws UnixException
* the unix exception
*/
public static boolean isUsed(final AclEntry.Type type, final String id, final String filePath, final String[] filePathNames, final int depth) throws UnixException
{
@ -422,8 +419,8 @@ public class AclManager
* @param depth
* the depth
* @return true, if is used
* @throws UnixException
* the unix exception
* @throws Exception
* the exception
*/
public static boolean isUsed(final String id, final String filePathName, final int depth) throws UnixException
{
@ -473,7 +470,6 @@ public class AclManager
* the depth
* @return true, if is used
* @throws UnixException
* the unix exception
*/
public static boolean isUsed(final String id, final String[] filePathNames, final int depth) throws UnixException
{
@ -520,7 +516,7 @@ public class AclManager
{
try
{
String[] newArgs = ArrayUtils.insert(0, args, "setfacl");
String[] newArgs = ArrayUtils.add(args, 0, "setfacl");
Unix.sudo(newArgs);
}
catch (CmdExecException exception)
@ -529,3 +525,5 @@ public class AclManager
}
}
}
// ////////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2017-2021 Christian Pierre MOMON
* Copyright (C) 2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -20,7 +20,6 @@ package fr.devinsy.unix.linux;
import java.io.File;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@ -36,6 +35,7 @@ import fr.devinsy.unix.util.PropertyList;
/**
* The Class Linux.
*
* @author Christian Pierre MOMON (christian.momon@devinsy.fr)
*/
public class Linux
{
@ -207,7 +207,6 @@ public class Linux
*
* @return the string
* @throws IOException
* Signals that an I/O exception has occurred.
*/
public static String readProcCpuinfo0() throws IOException
{
@ -237,7 +236,7 @@ public class Linux
{
String result;
result = FileUtils.readFileToString(new File("/proc/cpuinfo"), StandardCharsets.UTF_8);
result = FileUtils.readFileToString(new File("/proc/cpuinfo"));
//
return result;
@ -254,7 +253,7 @@ public class Linux
{
String result;
result = FileUtils.readFileToString(new File("/proc/meminfo"), StandardCharsets.UTF_8);
result = FileUtils.readFileToString(new File("/proc/meminfo"));
//
return result;
@ -265,13 +264,12 @@ public class Linux
*
* @return the string
* @throws IOException
* Signals that an I/O exception has occurred.
*/
public static String readProcUptimeFile() throws IOException
{
String result;
result = FileUtils.readFileToString(new File("/proc/uptime"), StandardCharsets.UTF_8);
result = FileUtils.readFileToString(new File("/proc/uptime"));
//
return result;
@ -288,7 +286,7 @@ public class Linux
{
String result;
result = FileUtils.readFileToString(new File("/proc/version"), StandardCharsets.UTF_8);
result = FileUtils.readFileToString(new File("/proc/version"));
//
return result;
@ -311,16 +309,16 @@ public class Linux
if (debianFile.exists())
{
result = "Debian " + FileUtils.readFileToString(debianFile, StandardCharsets.UTF_8);
result = "Debian " + FileUtils.readFileToString(debianFile);
}
else if (redhatFile.exists())
{
result = FileUtils.readFileToString(redhatFile, StandardCharsets.UTF_8);
result = FileUtils.readFileToString(redhatFile);
}
else if (suseFile.exists())
{
// TODO
result = "SUSE " + FileUtils.readFileToString(debianFile, StandardCharsets.UTF_8);
result = "SUSE " + FileUtils.readFileToString(debianFile);
}
else
{
@ -338,3 +336,5 @@ public class Linux
return result;
}
}
// ////////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2006-2021 Christian Pierre MOMON
* Copyright (C) 2006-2010,2013-2014,2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -20,11 +20,19 @@ package fr.devinsy.unix.util;
import java.io.File;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* The Class ChangeableFile.
* The Class CachedFile.
*
* @author Christian Pierre MOMON <christian.momon@devinsy.fr>
*/
public class ChangeableFile
{
private static final Logger logger = LoggerFactory.getLogger(ChangeableFile.class);
private File sourceFile;
private long sourceTime;
@ -111,3 +119,5 @@ public class ChangeableFile
this.sourceTime = 0;
}
}
// ////////////////////////////////////////////////////////////////////////

View file

@ -1,5 +1,5 @@
/*
* Copyright (C) 2017-2021 Christian Pierre MOMON
* Copyright (C) 2017-2018 Christian Pierre MOMON
*
* This file is part of Devinsy-unix.
*
@ -28,11 +28,6 @@ public class Property
/**
* Utility class has not to have a constructor.
*
* @param name
* the name
* @param value
* the value
*/
public Property(final String name, final String value)
{
@ -40,43 +35,21 @@ public class Property
this.value = value;
}
/**
* Gets the name.
*
* @return the name
*/
public String getName()
{
return this.name;
}
/**
* Gets the value.
*
* @return the value
*/
public String getValue()
{
return this.value;
}
/**
* Sets the name.
*
* @param name
* the new name
*/
public void setName(final String name)
{
this.name = name;
}
/**
* Sets the value.
*
* @param value
* the new value
*/
public void setValue(final String value)
{
this.value = value;