1 package org.synchronoss.cpo.cassandra.meta;
2
3 /*-
4 * [[
5 * cassandra
6 * ==
7 * Copyright (C) 2003 - 2026 Exaxis LLC, Synchronoss Technologies Inc
8 * ==
9 * This program is free software: you can redistribute it and/or modify
10 * it under the terms of the GNU Lesser General Public License as
11 * published by the Free Software Foundation, either version 3 of the
12 * License, or (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Lesser Public License for more details.
18 *
19 * You should have received a copy of the GNU General Lesser Public
20 * License along with this program. If not, see
21 * <http://www.gnu.org/licenses/lgpl-3.0.html>.
22 * ]]
23 */
24
25 import org.synchronoss.cpo.cassandra.exporter.CassandraMetaXmlObjectExporter;
26 import org.synchronoss.cpo.core.CpoException;
27 import org.synchronoss.cpo.core.exporter.MetaXmlObjectExporter;
28 import org.synchronoss.cpo.core.meta.CpoMetaDescriptor;
29
30 /**
31 * CassandraCpoMetaDescriptor is the Cassandra implementation of {@link CpoMetaDescriptor}. It
32 * points CPO at the {@link CassandraCpoMetaAdapter} used to load the meta configuration and at the
33 * {@link CassandraMetaXmlObjectExporter} used to export it back to XML.
34 *
35 * @author dberry
36 */
37 public class CassandraCpoMetaDescriptor extends CpoMetaDescriptor {
38
39 /**
40 * Constructs a CassandraCpoMetaDescriptor
41 *
42 * @param name The descriptor name
43 * @param caseSensitive Is data member matching case sensitive
44 * @throws CpoException An error occurred
45 */
46 public CassandraCpoMetaDescriptor(String name, boolean caseSensitive) throws CpoException {
47 super(name, caseSensitive);
48 }
49
50 @Override
51 protected Class getMetaAdapterClass() throws CpoException {
52 return CassandraCpoMetaAdapter.class;
53 }
54
55 @Override
56 protected MetaXmlObjectExporter getMetaXmlObjectExporter() {
57 return new CassandraMetaXmlObjectExporter(this);
58 }
59 }