Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-gpu
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-gpu
Commits
c71376ba
Commit
c71376ba
authored
Apr 06, 2008
by
Filippo Carone
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
jvlc logging classes added
parent
81a45bed
Changes
6
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
415 additions
and
0 deletions
+415
-0
bindings/java/core/src/main/java/org/videolan/jvlc/JVLC.java
bindings/java/core/src/main/java/org/videolan/jvlc/JVLC.java
+19
-0
bindings/java/core/src/main/java/org/videolan/jvlc/Logger.java
...ngs/java/core/src/main/java/org/videolan/jvlc/Logger.java
+79
-0
bindings/java/core/src/main/java/org/videolan/jvlc/LoggerIterator.java
.../core/src/main/java/org/videolan/jvlc/LoggerIterator.java
+97
-0
bindings/java/core/src/main/java/org/videolan/jvlc/LoggerMessage.java
...a/core/src/main/java/org/videolan/jvlc/LoggerMessage.java
+103
-0
bindings/java/core/src/main/java/org/videolan/jvlc/LoggerVerbosityLevel.java
...src/main/java/org/videolan/jvlc/LoggerVerbosityLevel.java
+37
-0
bindings/java/core/src/test/java/org/videolan/jvlc/LoggerTest.java
...java/core/src/test/java/org/videolan/jvlc/LoggerTest.java
+80
-0
No files found.
bindings/java/core/src/main/java/org/videolan/jvlc/JVLC.java
View file @
c71376ba
...
...
@@ -89,6 +89,25 @@ public class JVLC
return
libvlc
.
libvlc_new
(
args
.
length
,
args
,
exception
);
}
public
Logger
getLogger
()
{
return
new
Logger
(
this
);
}
public
LoggerVerbosityLevel
getLogVerbosity
()
{
libvlc_exception_t
exception
=
new
libvlc_exception_t
();
int
level
=
libvlc
.
libvlc_get_log_verbosity
(
instance
,
exception
);
return
LoggerVerbosityLevel
.
getSeverity
(
level
);
}
public
void
setLogVerbosity
(
LoggerVerbosityLevel
level
)
{
libvlc_exception_t
exception
=
new
libvlc_exception_t
();
libvlc
.
libvlc_set_log_verbosity
(
instance
,
level
.
ordinal
(),
exception
);
}
/**
* Returns the _instance.
* @return the _instance
...
...
bindings/java/core/src/main/java/org/videolan/jvlc/Logger.java
0 → 100644
View file @
c71376ba
/*****************************************************************************
* Logger.java: VLC Java Bindings
*****************************************************************************
* Copyright (C) 1998-2008 the VideoLAN team
*
* Authors: Filippo Carone <filippo@carone.org>
*
*
* $Id $
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program 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 for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
*****************************************************************************/
package
org.videolan.jvlc
;
import
java.util.Iterator
;
import
org.videolan.jvlc.internal.LibVlc
;
import
org.videolan.jvlc.internal.LibVlc.LibVlcLog
;
import
org.videolan.jvlc.internal.LibVlc.libvlc_exception_t
;
public
class
Logger
{
LibVlcLog
logInstance
;
LibVlc
libvlc
;
/**
* @param jvlc The current jvlc instance
*/
public
Logger
(
JVLC
jvlc
)
{
this
.
libvlc
=
jvlc
.
getLibvlc
();
libvlc_exception_t
exception
=
new
libvlc_exception_t
();
this
.
logInstance
=
jvlc
.
getLibvlc
().
libvlc_log_open
(
jvlc
.
getInstance
(),
exception
);
if
(
exception
.
raised
==
1
)
{
throw
new
RuntimeException
(
"Native exception thrown: "
+
exception
.
message
);
}
}
public
void
clear
()
{
libvlc_exception_t
exception
=
new
libvlc_exception_t
();
libvlc
.
libvlc_log_clear
(
logInstance
,
exception
);
}
public
void
close
()
{
libvlc_exception_t
exception
=
new
libvlc_exception_t
();
libvlc
.
libvlc_log_close
(
logInstance
,
exception
);
}
public
int
count
()
{
libvlc_exception_t
exception
=
new
libvlc_exception_t
();
return
libvlc
.
libvlc_log_count
(
logInstance
,
exception
);
}
public
Iterator
<
LoggerMessage
>
iterator
()
{
return
new
LoggerIterator
(
this
);
}
}
bindings/java/core/src/main/java/org/videolan/jvlc/LoggerIterator.java
0 → 100644
View file @
c71376ba
/*****************************************************************************
* LoggerIterator.java: VLC Java Bindings
*****************************************************************************
* Copyright (C) 1998-2008 the VideoLAN team
*
* Authors: Filippo Carone <filippo@carone.org>
*
*
* $Id $
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program 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 for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
*****************************************************************************/
package
org.videolan.jvlc
;
import
java.util.Iterator
;
import
org.videolan.jvlc.internal.LibVlc.LibVlcLogIterator
;
import
org.videolan.jvlc.internal.LibVlc.libvlc_exception_t
;
import
org.videolan.jvlc.internal.LibVlc.libvlc_log_message_t
;
public
class
LoggerIterator
implements
Iterator
<
LoggerMessage
>
{
private
Logger
logger
;
private
LibVlcLogIterator
logIterator
;
/**
* @param logInstance
*/
LoggerIterator
(
Logger
logger
)
{
this
.
logger
=
logger
;
libvlc_exception_t
exception
=
new
libvlc_exception_t
();
this
.
logIterator
=
logger
.
libvlc
.
libvlc_log_get_iterator
(
logger
.
logInstance
,
exception
);
}
/**
* {@inheritDoc}
*/
@Override
public
boolean
hasNext
()
{
libvlc_exception_t
exception
=
new
libvlc_exception_t
();
return
logger
.
libvlc
.
libvlc_log_iterator_has_next
(
logIterator
,
exception
)
!=
0
;
}
/**
* {@inheritDoc}
*/
@Override
public
LoggerMessage
next
()
{
libvlc_exception_t
exception
=
new
libvlc_exception_t
();
libvlc_log_message_t
message
=
new
libvlc_log_message_t
();
logger
.
libvlc
.
libvlc_log_iterator_next
(
logIterator
,
message
,
exception
);
LoggerMessage
result
=
new
LoggerMessage
(
message
);
return
result
;
}
/**
* {@inheritDoc}
* Does not remove the element.
*/
@Override
public
void
remove
()
{
//
}
/**
* {@inheritDoc}
*/
@Override
protected
void
finalize
()
throws
Throwable
{
libvlc_exception_t
exception
=
new
libvlc_exception_t
();
logger
.
libvlc
.
libvlc_log_iterator_free
(
logIterator
,
exception
);
super
.
finalize
();
}
}
bindings/java/core/src/main/java/org/videolan/jvlc/LoggerMessage.java
0 → 100644
View file @
c71376ba
/*****************************************************************************
* LoggerMessage.java: VLC Java Bindings
*****************************************************************************
* Copyright (C) 1998-2008 the VideoLAN team
*
* Authors: Filippo Carone <filippo@carone.org>
*
*
* $Id $
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program 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 for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
*****************************************************************************/
package
org.videolan.jvlc
;
import
org.videolan.jvlc.internal.LibVlc.libvlc_log_message_t
;
public
class
LoggerMessage
{
private
LoggerVerbosityLevel
severity
;
private
String
header
;
private
String
message
;
private
String
name
;
private
String
type
;
/**
* @param message
*/
LoggerMessage
(
libvlc_log_message_t
message
)
{
this
.
severity
=
LoggerVerbosityLevel
.
getSeverity
(
message
.
i_severity
);
this
.
header
=
message
.
psz_header
;
this
.
message
=
message
.
psz_message
;
this
.
name
=
message
.
psz_name
;
this
.
type
=
message
.
psz_type
;
}
/**
* Returns the header.
* @return the header
*/
public
String
getHeader
()
{
return
header
;
}
/**
* Returns the message.
* @return the message
*/
public
String
getMessage
()
{
return
message
;
}
/**
* Returns the name.
* @return the name
*/
public
String
getName
()
{
return
name
;
}
/**
* Returns the type.
* @return the type
*/
public
String
getType
()
{
return
type
;
}
/**
* Returns the severity.
* @return the severity
*/
public
LoggerVerbosityLevel
getSeverity
()
{
return
severity
;
}
}
bindings/java/core/src/main/java/org/videolan/jvlc/LoggerVerbosityLevel.java
0 → 100644
View file @
c71376ba
/*****************************************************************************
* LoggerSeverityEnum.java: VLC Java Bindings
*****************************************************************************
* Copyright (C) 1998-2008 the VideoLAN team
*
* Authors: Filippo Carone <filippo@carone.org>
*
*
* $Id $
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program 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 for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
*****************************************************************************/
package
org.videolan.jvlc
;
public
enum
LoggerVerbosityLevel
{
INFO
,
ERROR
,
WARNING
,
DEBUG
;
public
static
LoggerVerbosityLevel
getSeverity
(
int
ordinal
)
{
return
new
LoggerVerbosityLevel
[]{
INFO
,
ERROR
,
WARNING
,
DEBUG
}[
ordinal
];
}
}
bindings/java/core/src/test/java/org/videolan/jvlc/LoggerTest.java
0 → 100644
View file @
c71376ba
/*****************************************************************************
* LoggerTest.java: VLC Java Bindings
*****************************************************************************
* Copyright (C) 1998-2008 the VideoLAN team
*
* Authors: Filippo Carone <filippo@carone.org>
*
*
* $Id $
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program 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 for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
*****************************************************************************/
package
org.videolan.jvlc
;
import
java.util.Iterator
;
import
junit.framework.Assert
;
import
org.junit.Before
;
import
org.junit.Test
;
public
class
LoggerTest
{
private
JVLC
jvlc
;
private
String
mrl
=
getClass
().
getResource
(
"/raffa_voice.ogg"
).
getFile
();
@Before
public
void
setup
()
{
jvlc
=
new
JVLC
(
"-I dummy --aout=dummy --vout=dummy"
);
}
@Test
public
void
testLogDebug
()
{
jvlc
.
setLogVerbosity
(
LoggerVerbosityLevel
.
DEBUG
);
Logger
logger
=
jvlc
.
getLogger
();
jvlc
.
play
(
mrl
);
Assert
.
assertTrue
(
logger
.
count
()
>
0
);
}
/**
*
*/
@Test
public
void
testLogError
()
{
jvlc
.
setLogVerbosity
(
LoggerVerbosityLevel
.
DEBUG
);
Logger
logger
=
jvlc
.
getLogger
();
logger
.
clear
();
Assert
.
assertEquals
(
0
,
logger
.
count
());
jvlc
.
play
(
mrl
);
Iterator
<
LoggerMessage
>
loggerIterator
=
logger
.
iterator
();
while
(
loggerIterator
.
hasNext
())
{
LoggerMessage
message
=
loggerIterator
.
next
();
Assert
.
assertNotNull
(
message
.
getMessage
());
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment